La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Jour 21 Jour 2. 2 Environnement standard • Commandes de base • javac (compilateur) • java (interpréteur) • appletviewer.

Présentations similaires


Présentation au sujet: "Jour 21 Jour 2. 2 Environnement standard • Commandes de base • javac (compilateur) • java (interpréteur) • appletviewer."— Transcription de la présentation:

1 Jour 21 Jour 2

2 2 Environnement standard • Commandes de base • javac (compilateur) • java (interpréteur) • appletviewer

3 Jour 23 Environnement Standard • jdb • javah • javap (désassembleur de classes) • javadoc

4 Jour 24 • Compilateur java • javac options files • Chaque fichier doit contenir une classe publique • -d: directory • -o: pour optimization javac

5 Jour 25 • interprète et exécute des fichiers.class • java options classname arguments • la classes doit contenir une méthode main • -help: liste des options • -verify: vérification du bytecode java

6 Jour 26 • charge des documents HTML • cherche les tags référençant une applet • ignore tous les autres tags HTML • appletviewer options urls • -debug: avec le jdb appletviewer

7 Jour 27 • Le débogueur java • Fonctionne avec l’interpréteur java • Trouver des parties défectueuses du code • jdb intoptions • intoptions: les options de l’interpréteur jdb

8 Jour 28 • Créer un fichier source C • javah options classnames • -d directory: le répertoire de sauvegarde • -o outpufile: combine l’entête et le code source javah

9 Jour 29 javap • imprimer une version lisible du bytecode • déclaration méthodes, constructeurs, public et default • javah options classnames • -c: imprime les instructions de la machine virtuelle • -l: nb lignes, informations sur variables locales

10 Jour 210 javadoc • générateur de documentation (HTML) • classe, interface, hiérarchie, méthodes et variables • inclus tous les commentaires des codes sources

11 Jour 211 javadoc • javadoc options packagename • javadoc options files • -private: toutes les classes, variables et méthodes

12 Jour 212 Libraries standard • packages des base • Les améliorations Java2 • Documentation Java2

13 Jour 213 • java.applet • java.awt • java.awt.event • java.io • java.lang Packages de base

14 Jour 214 • java.math • java.net • java.text • java.util Packages de base

15 Jour 215 java.applet • Une seule classe: Applet

16 Jour 216 • init (): joue le rôle d’un constructeur • start (): lancer un thread de l’applet • stop (): après avoir quitté la page web • destroy (): après l’arrêt du navigateur java.applet

17 Jour 217 java.awt • awt: Abstract Windowing Toolkit • Tous les aspects graphiques • Amélioré par swing

18 Jour 218 java.awt (1 of 3)

19 Jour 219 java.awt.Color • Manipulation de couleurs • Couleurs prédéfinis: public final static Color orange; public final static Color pink; public final static Color yellow;

20 Jour 220 java.awt.Color • Méthodes: public Color (int r, int g, int b) public Color getColor () public void setColor (Color c) public int getGreen ()

21 Jour 221 java.awt.Event • Saisie des événements (clavier, fenêtre ou souris) • Evénements: public static final int END = 1001; public static final int PGUP = 1002; public static final int MOUSE_DOWN;

22 Jour 222 java.awt.Event • Méthodes: boolean isConsumed(): événement consommé public boolean shiftDown(): si le shift est pressé

23 Jour 223 java.awt.Graphics • Classe abstraite pour effectuer des dessins • Aucune constante n’est prédéfinie • Toutes les méthodes sont abstraites sauf rectangle • Méthodes: Dessiner des rectangles drawRect(int x, int y, int width, int height)

24 Jour 224 java.awt (2 of 3)

25 Jour 225 java.awt.Component • Classe abstraite • Tous les composants graphiques y héritent • Variables: Color background; Cursor cursor;

26 Jour 226 java.awt.Component • Méthodes: addMouseListener(MouseListener l): la souris setBackground(Color c): arrière plan setVisible(boolean b): rendre visible

27 Jour 227 java.awt.Frame • Dessiner des fenêtres • Les constantes int DEFAULT_CURSOR= Cursor.DEFAULT_CURSOR; boolean resizable = true; taille fenêtre; String title = “Untitled”; titre par défaut

28 Jour 228 java.awt.Frame • Méthodes: Frame(String title): constructeur setMenuBar(MenuBar mb): une barre de menu setTitle(String title): mettre à jour le titre isResizable(): modifier la taille

29 Jour 229 java.awt.Menu • Définir les éléments d’un menu • Variables: Vector items = new Vector(); elts du menu • Méthodes: Menu(String label): construire un menu add(MenuItem mi): ajouter un item du menu

30 Jour 230 java.awt.AWTException • Signale qu’une exception AWT est survenue • Méthode: AWTException(String msg): afficher un message particulier

31 Jour 231 java.awt (3 of 3)

32 Jour 232 java.awt.event

33 Jour 233 java.awt.event.ActionEvent • Permet de localiser l’événement • Constantes: public static final int ALT_MST // alt public static final int CTRL_MASK // ctrl public static final int SHIFT_MASK // shift

34 Jour 234 java.awt.event.MouseEvent • Saisir un événement de la souris • Constantes: public static final int MOUSE_CLICKED public static final int MOUSE_MOVED public static final int MOUSE_PRESSED

35 Jour 235 java.awt.event.MouseEvent • Méthodes: public int getX() // position X de la souris public int getY() // positon Y de la souris private static native void initIDs(): permettre l’accès par des méthodes C

36 Jour 236 java.io • Les entrées sorties standards • Les entrées sorties fichiers

37 Jour 237 java.io (1 of 2)

38 Jour 238 java.io (2 of 2)

39 Jour 239 java.lang • Les classes wrapper • La classe Math • La classe String • La classe System • La classe Thread

40 Jour 240 java.lang (1 of 3)

41 Jour 241 java.lang.Math • Classe finale • Les fonctions mathématiques standards • Constantes: E=2.1782818284590452354 // exponentielle PI=3.14159265358979323846 // 

42 Jour 242 java.lang.Math • Méthodes: cos(double a) // le cosinus d’un nombre ext(double a) // exponentielle sqrt(double a) // racine carrée

43 Jour 243 java.lang.Number • Racine des classes wrapper • Majorité des méthodes abstraites • Méthodes: shortValue() // transformer une valeur en short intValue() // abstraite

44 Jour 244 java.lang.String • Classe finale • Traitement des chaînes des caractères • Méthodes: String(char value[ ]) // créer un nouveau string length() // longueur d’une chaîne de caractère

45 Jour 245 java.lang.String • Méthodes: substring(int beginIndex, int endIndex) compareTo(String anotherString) replace(char oldChar, char newChar)

46 Jour 246 java.lang.System • Classe finale • Des méthodes sur le système • Constantes: PrintStream out // pour écriture InputStream in // pour la saisie SecurityManager security // gestion de la sécurité

47 Jour 247 java.lang.System • Méthodes: gc() // forcer le garbage collector setSecurityManager(SecurityManager s) exit(int status) // quitter

48 Jour 248 java.lang.Thread • Processus qui tourne continuellement • Constantes: MAX_PRIORITY=10 // priorité maximale NORM_PRIORITY=5 // priorité par défaut

49 Jour 249 java.lang.Thread • Méthodes: start() // lancer un thread sleep (long) // mettre en veille un thread interrupt() // arrêter un thread suspend() // suspendre un thread

50 Jour 250 java.lang (2 of 3)

51 Jour 251 java.lang (3 of 3)

52 Jour 252 java.math • Les wrappers • BigInteger et BigDecimal

53 Jour 253 java.math

54 Jour 254 java.net • La programmation réseau • La programmation Internet

55 Jour 255 java.net

56 Jour 256 java.net.ServerSocket • Accès au réseau • Méthodes: ServerSocket(int port) // port spécifique int getLocalPort() // port local accept() // accepter une connection

57 Jour 257 java.net.Socket • Client socket • Méthodes: Socket( String host, int port) // nouvelle socket close() // fermer le socket int getPort() // avoir le port

58 Jour 258 java.net.HttpURLConnection • Connection URL • Constantes: int HTTP_BAD_GATEWAY = 502 int HTTP_NOT_FOUND = 404 String[ ] methods = { "GET", "POST", "PUT", "HEAD", "OPTIONS", "DELETE", "TRACE" }

59 Jour 259 java.net.HttpURLConnection • Méthodes: HttpURLConnection (URL u) boolean usingProxy() // proxy ou non void disconnect() // déconnexion Sting getRequestMethod() // la méthode

60 Jour 260 java.text • Format textuel • Format des dates

61 Jour 261 java.text

62 Jour 262 java.text.DateFormatSymbols • Formatage des dates locales • Constantes: millisPerHour=60*60*1000 // timezone • Méthodes: DateFormatSymbols() // format par défaut getAmPmStrings() getMonths

63 Jour 263 java.text.NumberFormat • Formatage des nombres • Constantes: CURRENCYSTYLE=1 // style de format • Méthodes: getMaximumFractionDigits() parse(String text)

64 Jour 264 java.util • Le package des utilitaires • Random, Vector, Hashtable, etc.

65 Jour 265 java.util

66 Jour 266 java.util.Hashtable • Correspondance entre des clés et des valeurs • Méthodes: Hashtable() // constructeur size() // taille put(Object key, Object value)

67 Jour 267 java.util.Random • Générer des nombre aléatoires • Méthodes: Random() // générer une nouvelle classe nextBoolean()

68 Jour 268 java.util.Vector • Méthodes: Vector(int initialCapacity) add(int index, Object element) elementAt(int index) firstElement() insertElementAt(Object obj, int index)

69 Jour 269 Amélioration Java2 • JFC (Java Foundation Classes) • RMI • Java IDL • JNI • JDBC-ODBC

70 Jour 270 JFC • swing: amélioration de AWT • Java 2D: outils pour dessins 2D • Accès: tous les types d’écran • Drag-and-Drop

71 Jour 271 RMI • Remote Methode Invocation • Invocation de méthodes à distance • Programmation client serveur

72 Jour 272 RMI

73 Jour 273 Java IDL • Interface Definition Language • Communication avec d’autres environnements • C++, SmallTalk, Cobol, etc.

74 Jour 274 CORBA

75 Jour 275 JNI • Java Native Interface • Avoir un code spécifique à une plate-forme • Permet de lier d’autres applications (C++)

76 Jour 276 JDBC-ODBC • Accès aux BD relationnels • Accès à ODBC par JDBC • Accès multi-thread

77 Jour 277 Documentation

78 Jour 278 Développement GUI • Éléments graphiques • Programmation par événement • Interfaces événements • Composantes et containers • Composantes graphiques

79 Jour 279 Éléments graphiques • Pièces de l’interface graphique • Héritage de la classe Component • Éléments graphiques regroupés dans des containers • Arrangement: LayoutManager • Saisie des événements

80 Jour 280 Eléments graphiques • Label: afficher une zone de texte • TextArea: afficher des lignes de texte • List: afficher une liste d’items pour sélection • PushButton: un bouton d’action

81 Jour 281 Eléments graphiques • Evénements: Mouse: les différentes actions de la souris Key: action au clavier Window: action sur une fenêtre Item: la sélection d’un item

82 Jour 282 Programmation par événement • Différencer le programme en trois parties Saisir les événements Ajouter listener GUI Listeners Programme Effets des événements

83 Jour 283 Interface événements • Chaque type d’événement: une Interface • Un événement possède des classes qui l’utilisent • Exemple: WindowEvent: Window MouseEvent: Component ActionEvent: Button, List, TextField et MenuItem

84 Jour 284 Composantes et containers • Des ensembles de composantes • Gérer des composantes et affichage • Dérivé de la classe Container • Ils peuvent être attachés à des surfaces graphiques • Ils peuvent être indépendants (window)

85 Jour 285 Composantes et containers Component AppletFrame Container Dialog Window Panel

86 Jour 286 Composantes et containers • Container: Non instantiable • Panel: organiser et grouper des composantes • Applet: panel sur le navigateur web

87 Jour 287 Composantes et containers • Window: ne contient ni titre, ni menu, ni bordure • Frame: une bordure et un titre, supporte les menus • Dialog: Il traite avec un situation particulère

88 Jour 288 Les composantes graphiques • Labels • Text Fields et Text Area • List • Scrollbar • Layout Managers

89 Jour 289 Lables • Spécifier une ligne de texte dans un GUI • Classe: Label • Ne peuvent être sélectionnés par l’utilisateur • Ne peuvent être modifiés par l’utilisateur

90 Jour 290 Lables • Label (String label) • void setText (String label) • String getText () • int getAlignement ()

91 Jour 291 Text Fields et Text Area • Text Field: Écrire une ligne de texte Spécifier si l’user peut modifier ou non Classe: TextField TextField (String text)

92 Jour 292 • Text Area: Ecrire plusieurs lignes Spécifier la taille Classe: TextArea TextArea (String text, int rows, int columns) Text Fields et Text Area

93 Jour 293 • Méthodes communes: void setText(String text) String getText() Sting getSelectedText() void setEditable (boolean b) Text Fields et Text Area

94 Jour 294 List • Afficher une liste de chaîne à sélectionner • Un élément de la liste peut être sélectionné par clic • List (int rows, boolean multipleSelections)

95 Jour 295 • void addItem (String item, int index) • void setMultipleMode (boolean b) • String getitem (int index) • String getSelectedItem () List

96 Jour 296 Scrollbar • Il se crée de lui même ou bien par le contructeur • Scrollbar (int orientation): orientation (V/H) • void setUnitIncrement (int increment) • int getOrientation ()

97 Jour 297 Layout Managers • Flow Layout • Grid Layout • Border Layout • Card Layout • Grid Bag Layout

98 Jour 298 Flow Layout • Par défaut dans un panel ou une applet • Place les éléments dans l’ordre d’ajout • Placement de gauche à droite • FlowLayout (int align)

99 Jour 299 Grid Layout • Place des composantes dans une grille • Nombre spécifique de lignes et de colonnes • GridLayout (int rows, int colums)

100 Jour 2100 Border Layout • Définie cinq emplacements • NORTH, SOUTH, WEST, EAST, CENTER • À l’ajout d’un élément: spécifier l’emplacement • Taille emplacement: dépend de celle du composant • BorderLayout ()

101 Jour 2101 Card Layout • Afficher un composant à la fois • Ordonner dans l’ordre d’ajout • CardLayout () • void first (Container cont) • void show (Container cont, String name)

102 Jour 2102 Grid Bag Layout • Un composant peut avoir plusieurs cellules • Taille variable des cellules • Les cellules sont ajoutées au fur et à mesure • Contraintes pour la composante: GridBagConstaint

103 Jour 2103 Outils de développement • Java Workshop 2.0 • Jbuilder 3.0 de Borland • Visual Café for Java de Symantec • Visual Age for Java 2.0 de IBM

104 Jour 2104 Java Workshop 2.0 • Éditeur syntaxique • Débogueur intéractif • Plusieurs bogues

105 Jour 2105 JBuilder 3.0 • Excellent produit • Très puissant • Plutôt lent

106 Jour 2106 Visual Café for Java 4.0 • Excellent produit • Rapide • Facile à utiliser

107 Jour 2107 Visual Age for Java 2.0 • Fabriqué par IBM • Supporte Java 1.2

108 Jour 2108 L’environnement Visual Café

109 Jour 2109 UML: Unified Modeling Language • Méthodologie de conception O.O • Neuf diagrammes • Use case • Diagramme des classes • Diagramme de séquence

110 Jour 2110 UML • Use case: première étape • Description des fonctionnalités du système • Supporté par un texte descriptif • Exemple:

111 Jour 2111 Use Case • Use Case de gestion des Commandes

112 Jour 2112 UML • Diagramme des classes • Relations entre les classes • Héritage: simple ou multiple • Associations • Aggrégation • Exemple:

113 Jour 2113 Heritage

114 Jour 2114 UML: Diagramme de class

115 Jour 2115 UML • Diagramme de séquences • Les appels entre les fonctions • Pour chaque use-case un diagramme • Exemple:

116 Jour 2116 Diagramme Séquence: Vérifier Commande Client


Télécharger ppt "Jour 21 Jour 2. 2 Environnement standard • Commandes de base • javac (compilateur) • java (interpréteur) • appletviewer."

Présentations similaires


Annonces Google