INTRODUCTION A JAVA Chapitre 1 : Introduction

Slides:



Advertisements
Présentations similaires
Un environnement de développement éducatif
Advertisements

[number 1-100].
Le moteur
Développement dapplications sur mobiles.NET et J2ME, C++ et Symbian WIPLIER Thomas – M2IRT2009 – 15/02/2007.
Mon carnet De comportement
A propos de java Sun, fin 1995 C++ nettoyé semi-interprété
Classe : …………… Nom : …………………………………… Date : ………………..
Est Ouest Sud 11 1 Nord 1 Laval Du Breuil, Adstock, Québec I-17-17ACBLScore S0417 Allez à 1 Est Allez à 4 Sud Allez à 3 Est Allez à 2 Ouest RndNE
Est Ouest Sud 11 1 Nord 1 RondeNE SO
Les Prepositions.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
JXDVDTEK – Une DVDthèque en Java et XML
Formation Technique 6èmepartie.
Exposé de Système - Informatique et Réseau
LICENCE MIAGE Introduction Programmation Orientée Objet JAVA philippe
La diapo suivante pour faire des algorithmes (colorier les ampoules …à varier pour éviter le « copiage ») et dénombrer (Entoure dans la bande numérique.
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
Les entrées /sorties en Java François Bonneville
Injection de dépendances
BlueJ_XI 1 Java, les objets : tout de suite ! Gestion des erreurs : les exceptions Notes de cours associées au chapitre 11 tutorial BlueJ
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
Les verbes auxiliaires Avoir ou être ?? Choisissez! Cest un verbe Dr Mrs Vandertrampp? Cest un verbe réfléchi?
Faculté I&C, Claude Petitpierre, André Maurer 1 Java.
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
Laboratoire d'Informatique de l’Université de Franche-Comté
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
Introduction à la programmation (Java)
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
Développement d’application web
ADOBE FLEX 4. © Logica All rights reservedNo. 2 Introduction Flex en action Autour de Flex Logica Le programme.
La Saint-Valentin Par Matt Maxwell.
Développer en C avec Eclipse Introduction Création d'un projet Ajout de fichiers Compilation Exécution Utiliser le débogueur Département dinformatique.
Programmation Orienté Objet Application Au Langage JAVA Licence professionnelle ATC ~ 07/08 Bessem BOURAOUI
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Programmation concurrente
Faculté I&C, Claude Petitpierre, André Maurer 1 Concepts dhéritage Héritage dimplémentation hasA Héritage de spécialisation isA.
Notre calendrier français MARS 2014
Multi-Thread Jian-Yun Nie
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 1 : Introduction.
Annexe 1 VISITE SUR
Formation Développeur Java Applet et interfaces graphiques avec AWT
C'est pour bientôt.....
Veuillez trouver ci-joint
Les Nombres! de 0 à 20.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
LUNDI – MARDI – MERCREDI – JEUDI – VENDREDI – SAMEDI – DIMANCHE
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
* Source : Étude sur la consommation de la Commission européenne, indicateur de GfK Anticipations.
10 paires -. 9 séries de 3 étuis ( n° 1 à 27 ) 9 positions à jouer 5 tables Réalisé par M..Chardon.
CALENDRIER-PLAYBOY 2020.
USAM BRIDGE H O W E L L -CLASSIQUE
Septembre Semaines du 2 au 13 septembre DATECOURSEXERCICESEXERCICES à fairePOUR le Jeudi 5 Vendredi 6 Lundi 9 Prise de contacts. Programme ISN. Déroulement.
6 Nombres et Heures 20 vingt 30 trente 40 quarante.
9 paires séries de 3 étuis ( n° 1 à 27 )
Projet de stage d’année IIR4 sous le thème:
Quel est l’intérêt d’utiliser le diagramme de Gantt dans la démarche de projet A partir d’un exemple concret, nous allons pouvoir exploiter plusieurs parties.
Les Chiffres Prêts?
Introduction à la programmation objet avec java
Médiathèque de Chauffailles du 3 au 28 mars 2009.
Premiers pas dans le langage Java 2012/ Premiers pas dans le langage Java TI3.4 Responsable : M lle Sana Ezzedine
Introduction à JAVA Sylvie Billot
Introduction au langage JAVA
22 Concepts de base du langage Java. 2-2 Objectifs A la fin de ce cours, vous serez capables de : Identifier les éléments essentiels de Java Identifier.
Transcription de la présentation:

INTRODUCTION A JAVA Chapitre 1 : Introduction Jean-Claude MARTIN LIMSI-CNRS - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - PLAN : 1. INTRODUCTION 2. LE LANGAGE JAVA 3. LE PAQUETAGE AWT 4. LES ENTREES-SORTIES 5. INTERNET, IMAGE, THREAD 6. PERSPECTIVES - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - BIBLIOGRAPHIE - Jean-Claude MARTIN - ch1: Introduction -

Bibliographie : les livres «papier» Pour débuter : Macary, J.F. & Nicolas, C. (1996) Programmation Java. Eyrolles. 236p. Stephen R. Davis (1996) Formation à Java. Microsoft Press. 412 p. Pour approfondir : Flanagan, D. (1997) Java in a nutshell (2nd edition). O’Reilly. 610p. Joshi, D. & Vorobiev, P. (1997) Migrating from Java 1.0 to Java 1.1. Ventana. ISBN 1-56604-686-6 - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Historique développé par SUN initialement prévu pour l’électroménager « Oak » en 1991, Java depuis 1995 création de JavaSoft en 1996 ouverture à Internet versions: 1995 : 1.0 1996 : 1.1 1997 : 1.1.5 1998 : 1.2 - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Qu'est-ce que "Java" ? une "plateforme" = langage orienté objet (API) + environnement d'exécution (machine virtuelle) - Jean-Claude MARTIN - ch1: Introduction -

Des points communs et des différences avec C et C++ - Jean-Claude MARTIN - ch1: Introduction -

Environnements de développement : le JDK Le JDK (Java Development toolKit) téléchargement gratuit (www.javasoft.com) version 1.1 depuis début 1997 pas un environnement intégré ligne de commande comprend le compilateur javac l’interpréteur java le débogeur jdb le générateur de documentation HTML javadoc - Jean-Claude MARTIN - ch1: Introduction -

Environnements de développement : le JDK Comprend aussi le visualisateur d’applet appletviewer l’archiveur jar le générateur de fichiers C javah le gestionnaire de clés digitales javakey l’interpréteur java runtime jre le désassembleur javap les outils pour appeler des méthodes distantes (RMI) - Jean-Claude MARTIN - ch1: Introduction -

Un premier exemple : Hello world ! en application Java Créer un fichier HelloAppli.java public class HelloAppli { public static void main (String args[]) { System.out.println ("HelloWorld!\n"); } Compilez C :\javac HelloAppli.java un fichier compilé est crée : HelloAppli.class ; autorisé après les accolades - Jean-Claude MARTIN - ch1: Introduction -

Compilation de HelloAppli - Jean-Claude MARTIN - ch1: Introduction -

Compilation de HelloAppli.java public class HelloAppli { public static void main (String args[]) { System.out.println ("Hello World !"); } 130 octets (EdText 4000) Compilateur JAVAC HelloAppli.class 0 getstatic #7 <Field java.io.PrintStream out> 3 ldc #1 <String "Hello World !"> 5 invokevirtual #8 <Method void println(java.lang.String)> 8 return ... 473 octets (EdText 3000) - Jean-Claude MARTIN - ch1: Introduction -

Interprétation et exécution de HelloAppli nom de la classe Exécutez C :\java HelloAppli - Jean-Claude MARTIN - ch1: Introduction -

Interprétation et exécution de HelloAppli sur PC / DOS HelloAppli.class 0 getstatic #7 <Field java.io.PrintStream out> 3 ldc #1 <String "Hello World !"> 5 invokevirtual #8 <Method void println(java.lang.String)> 8 return ... Système d’exploitation Windows PC Machine Virtuelle Java EXECUTION Interpréteur JAVA pour Windows / PC - Jean-Claude MARTIN - ch1: Introduction -

Hello World sur Silicon Graphics Le même fichier HelloAppli.class est utilisé ! - Jean-Claude MARTIN - ch1: Introduction -

Interprétation et exécution de HelloAppli sur Silicon Graphics HelloAppli.class 0 getstatic #7 <Field java.io.PrintStream out> 3 ldc #1 <String "Hello World !"> 5 invokevirtual #8 <Method void println(java.lang.String)> 8 return ... Fichier issu de la compilation sur PC Système d’exploitation Silicon / Unix Machine Virtuelle Java EXECUTION Interpréteur JAVA pour Silicon / Unix - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - LES APPLETS - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Internet, WEB et HTML Internet un réseau de réseau né dans les années 70 (ARPAnet) plusieurs services : Email, WEB... WEB système d’information hypertexte, graphique, multi-plateforme, distribué, dynamique, accédant a différents types d’informations sur Internet de manière interactive HTML un langage de description de documents (images, hyperliens) - Jean-Claude MARTIN - ch1: Introduction -

Application / Applets Environnement d’exécution s'exécute depuis le système d'exploitation : Dos, Unix Applet = «Application leight» ou Applette chargement possible à travers Internet s'exécute dans un navigateur : Netscape Navigator, InternetExplorer un utilitaire : appletviewer Nuances ... - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - HTML (HyperText Markup Language) <HTML> <HEAD> <TITLE> Exemple HTML </TITLE> </HEAD> <BODY> <H1>Exemple</H1> Ceci est un exemple de page HTML. </BODY> </HTML> - Jean-Claude MARTIN - ch1: Introduction -

Exemple HTML «classique» - Jean-Claude MARTIN - ch1: Introduction -

Consulter un fichier HTML (1) CLIENT SERVEUR Navigateur (2) url HTML (3) <HTML> <HEAD> <TITLE> Exemple HTML </TITLE> </HEAD> <BODY> <H1>Exemple</H1> Ceci est un exemple de page HTML. </BODY> </HTML> (4) - Jean-Claude MARTIN - ch1: Introduction -

Premier exemple d'applet : HelloApplet.java Créer un fichier HelloApplet.java import java.awt.Graphics ; import java.applet.Applet ; public class HelloApplet extends Applet { public void paint (Graphics g) g.drawString (" Hello World! ", 0, 100) ; } le compiler : javac HelloApplet.java => le fichier HelloApplet.class est crée on peut se passer des imports mais il faut alors mettre les noms complets - Jean-Claude MARTIN - ch1: Introduction -

Premier exemple d'applet : HelloApplet.html Créer un fichier HelloApplet.html : <HTML> <HEAD> <TITLE> Exemple HTML </TITLE> </HEAD> <BODY> <H1>Exécution de l'applet</H1> <APPLET code="HelloApplet.class" width=100 height=100> </APPLET> </BODY> </HTML> resize souvent interdit - Jean-Claude MARTIN - ch1: Introduction -

Exécution locale avec appletviewer - Jean-Claude MARTIN - ch1: Introduction -

Consulter un fichier HTML contenant une applet Java (1) CLIENT SERVEUR (2) url Navigateur SUN Machine Virtuelle Java PC HTML + .class (3) <HTML> <HEAD> <TITLE> Exemple HTML </TITLE> </HEAD> <BODY> <H1>Exécution de l'applet</H1> <APPLET code="HelloApplet.class" width=100 height=100> </APPLET> ... Système d’exploitation SUN / Unix 0 aload_1 1 ldc #1 <String " Hello World! "> 3 bipush 20 5 bipush 20 7 invokevirtual #6 <Method void ... 10 return 0 aload_1 1 ldc #1 <String " Hello World! "> 3 bipush 20 5 bipush 20 7 invokevirtual #6 <Method void ... 10 return 0 aload_1 1 ldc #1 <String " Hello World! "> 3 bipush 20 5 bipush 20 7 invokevirtual #6 <Method void ... 10 return (4) - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Java / JavaScript Java (SUN) langage de programmation orienté objet le programme compilé s’exécute chez le client programmes indépendants (applications) JavaScript (Netscape) langage de programmation non orienté objet le programme s’exécute chez le client le source est inclus dans le fichier HTML - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - CGI / Active X / HTML CGI c’est une norme de passage de paramètres le langage de programmation est quelconque le programme s’exécute sur le serveur ActiveX (Microsoft) composants «réutilisables» manipulables par un script inclus dans HTML HTML langage de description de document - Jean-Claude MARTIN - ch1: Introduction -

Java / JavaScript CGI / Active X / HTML Evolutions rapides Passerelles - Jean-Claude MARTIN - ch1: Introduction -

Exécutions avec différents navigateurs - Jean-Claude MARTIN - ch1: Introduction -

Exemple : une applet carte interactive - Jean-Claude MARTIN - ch1: Introduction -

Javafig : une application pour dessiner - Jean-Claude MARTIN - ch1: Introduction -

3D function builder : une applet pour dessiner des courbes 3D - Jean-Claude MARTIN - ch1: Introduction -

Le navigateur exécute une applet les étapes le navigateur réserve de l’espace dans sa fenêtre pour l’exécution de l’applet le navigateur charge le bytecode (.class ou .jar) le navigateur crée une instance de l’applet la machine virtuelle appelle init() puis start() - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction -

Cycle de vie d’une applet - Jean-Claude MARTIN - ch1: Introduction -

Passage de paramètres à une applet <HTML> <HEAD> <TITLE> Passage de paramètres à une Applet </TITLE> </HEAD> <BODY> <H1>Exécution de l'applet</H1> <APPLET code="Par.class" width=300 height=300> <PARAM NAME="Nom" VALUE="Java in a nutshell"> <PARAM NAME="Nb" VALUE=610> </APPLET> </BODY> </HTML> - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - // Lecture des paramètres de l’applet dans le programme Java import java.awt.* ; import java.applet.* ; public class Par extends Applet { String sNomLivre, sNbPage; public void init () { sNomLivre = getParameter ("Nom"); sNbPage = getParameter ("Nb"); } public void paint (Graphics g) g.drawString ("Nom du livre : " +sNomLivre , 50, 50); g.drawString ("Nombre de pages :" + sNbPage , 50, 70); - Jean-Claude MARTIN - ch1: Introduction -

Exécution avec appletviewer - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Applet et Tags HTML absolu ou relatif à la page HTML si absent, celle de la page HTML < APPLET [CODEBASE = codebaseURL] CODE = appletFile [ALT = alternateText] [NAME = appletInstanceName] WIDTH = pixels HEIGHT = pixels [ALIGN = alignment] [VSPACE = pixels] [HSPACE = pixels] [ARCHIVE = «fichier1, fichier2»] > [< PARAM NAME = appletParameter1 VALUE = value >] [< PARAM NAME = appletParameter2 VALUE = value >] [alternateHTML] </APPLET> affiché par les navigateurs comprenant <APPLET> mais n’ayant pas pu exécuter l’applet Java plusieurs applets dans une page affiché par les navigateurs ne comprenant pas <APPLET> - Jean-Claude MARTIN - ch1: Introduction -

Qu’est-ce qu’une applet ? Component : peut gérer les événements souris, clavier... Container : peut contenir plusieurs objets graphiques Panel Applet : cycle de vie déterminé - Jean-Claude MARTIN - ch1: Introduction -

Applet et System.out.println import java.awt.* ; import java.applet.* ; public class HelloApplet extends Applet { public void init() { System.out.println ("Affichage depuis l'applet"); } public void paint (Graphics g) g.drawString (" Hello World! ", 20, 50) ; - Jean-Claude MARTIN - ch1: Introduction -

Affichage dans la console Java Peut aussi s’afficher dans la fenêtre ayant lancé manuellement le navigateur (ou l’appletviewer) - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Applet et sécurité Application :mêmes droits qu’un programme C... . plus la sécurité liée à Java Applet locale : peut avoir presque autant de droits téléchargée à travers le réseau considérée «untrusted» : limitations (dépendent du navigateur) espace de noms séparé des classes locales signature digitale spécifiée (javakey dans 1.1) => «trusted» - Jean-Claude MARTIN - ch1: Introduction -

- Jean-Claude MARTIN - ch1: Introduction - Sécurité En général : sur votre machine, une applet ne peut pas lire / écrire / supprimer / renommer des fichiers obtenir taille / date / droits d’accès des fichiers lister ou créer des dossiers se connecter à d’autres ordinateurs que celui depuis lequel le code a été téléchargé créer de nouveaux processus télécharger du code écrit dans un autre langage - Jean-Claude MARTIN - ch1: Introduction -