Au programme du jour …. Ce que vous navez pas encore vu Constantes et variables de classe Main et Tests Utilisation de lAPI Existence des packages Existence.

Slides:



Advertisements
Présentations similaires
La programmation orientée objet avec Java L3-MIAGE Plan
Advertisements

A propos de java Sun, fin 1995 C++ nettoyé semi-interprété
Introspection et Réflexion Manipulation dynamique de code Java.
Au programme du jour …. Introduction à lhéritage Un concept important de la programmation objet Livraison de code Organisation des répertoires et packages.
SI3 MAM3 Hydro Nathan Cohen Igor Litovsky Christophe Papazian
Introduction à la programmation objet Langage Java
Au programme du jour …. Livraison de code Organisation des répertoires et packages Ce que vous navez pas encore vraiment vu Constantes et variables de.
Introduction à la Programmation Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
Introduction à la Programmation Orientée Objet Langage Java
Au programme du jour …. Livraison de code Organisation des répertoires et packages Ce que vous navez pas encore vraiment vu Constantes et variables de.
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
Paquetages: Définitions Les classes Java sont regroupées en paquetages (packages en anglais) Ils correspondent aux « bibliothèques » des autres langages.
Approfondissement du langage
(Classes prédéfinies – API Java)
Introduction à Java - les paquetages -
Plan du cours La sérialisation: – comment stocker et restaurer les Objets? Les interfaces graphiques et la programmation évènementielle. –Comment concevoir.
C.
Programmer en JAVA par Tama
MIKHAYLOVA Vera Exposé Java principe de fonctionnement Lundi 17 mai 2004 DEUG 1ère année Science du langage Paris III.
LICENCE MIAGE Introduction Programmation Orientée Objet JAVA philippe
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
Programmation par Objets et Java
Principes de programmation (suite)
Outils de tests, logs et documentation Frédéric Moalannée 2010/2011 POO.
Introduction à la Programmation Orientée Objet Langage Java
Programmation orientée objet
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
JavaBeans Réalise par: EL KHADRAOUY TARIK AOUTIL SAFOWAN.
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
Laboratoire d'Informatique de l’Université de Franche-Comté
Principes de programmation (suite)
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Classes abstraites et Interfaces
1 Objectifs de ce cours (I21) Cours JAVA (I21) -Licence 1 Semestre 2 / Y.Laborde Résumé du cours précédent.
Introduction à la programmation (Java)
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
Introduction à la programmation objet Langage Java
Introduction à la Programmation Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
Cours 4 Héritage (suite).
COURS DE PROGRAMMATION ORIENTEE OBJET :
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI 1502 Principes fondamentaux de conception de logiciels
Java, les objets : tout de suite ! Rassembler, grouper les objets
LIFI-Java 2004 Séance du Mercredi 22 sept. Cours 3.
Variables et accès en Java. Déclaration des variables final transient static private Printer hp; transient => ne doivent pas être sérialisées volatile.
Créer des packages.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
 Syntaxe du langage PHP
Tutorat en bio-informatique
Les classes présenté par: RAHMOUNE RIME / ZEKRI SELMA.
Les paquetages.
Schéma de conception Factory Method Exemple Sylvain Giroux.
Cours du 5 novembre.
 Formulaires HTML : traiter les entrées utilisateur
Master 1 SIGLIS Intégration des données dans l’entreprise Stéphane Tallard JDBC: Java Database Connectivity Master 1 SIGLIS1JDBC.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
Initiation au JavaScript
Héritage Conception par Objet et programmation Java
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
1 Complément JAVA 1 - Eclipse. 2 Plan Notion d'environnement de développement Interface d'Eclipse Utiliser Eclipse Éditeur de code Fonctionnalité supplémentaire.
Généricité.
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.
FORMULAIRES FOMULAIRE Permet à l’utilisateur d’entrer des renseignements le concernant. Utilisation –Inscription sur un site –Mise à jour d’une base.
BlueJ_VII 1 Java, les objets : tout de suite ! Conception de classes (1) Notes de cours associées au chapitre 7 tutorial BlueJ
BlueJ_III 1 Java, les objets : tout de suite ! Interaction entre objets Notes de cours associées au chapitre 3 tutorial BlueJ
Java Réalisé par: Mouna POKORA. PLAN: Définition : Historique: Caractéristiques: un langage orienté objet: un langage interprété : un langage portable:
Transcription de la présentation:

Au programme du jour …. Ce que vous navez pas encore vu Constantes et variables de classe Main et Tests Utilisation de lAPI Existence des packages Existence dune Javadoc Comment écrire la Javadoc ? Comment faire des packages CONCLUSION : Livraison de code Organisation des répertoires et packages

Ce que vous navez pas encore vu Constantes et variables de classe Main et Tests

Un nouveau mot clé : static Information attachée à la classe et non à une instance Constantes private static final int GRAVITY = 3; public static final VAL_MAX=10; Variables et méthodes de classes Compteur : nombre dinstances Exemple du compte bancaire CAS PARTICULIER : une méthode main Pour une classe de Test

Un Main pour les Tests Exemple : Pour tester la classe ClasseATester Ecrire le contenu du main dans une classe TestDEClasseAtester (condition réelle de lusage) de sorte quil y ait : Création dinstances de cette classe : (Tests des constructeurs) Affichage des instances créées (Tests des constructeurs et de la méthode toString) Appels des méthodes en faisant varier la valeur des paramètres sur ces instances (Test des méthodes publiques) Affichage des retours des méthodes pour voir les tests

Les commandes public static void main(String[] args) javac ClasseAtester.java -> erreurs ou création du fichier ClasseAtester.class javac TestDEClasseAtester.java -> erreurs ou création du fichier TestDeClasseAtester.class java TestDeClasseAtester -> erreurs et/ou exécution du code ATTENTION A LORDRE DE COMPILATION

Utilisation de lAPI Existence des packages Existence dune Javadoc

API Java : à quoi ça vous sert ? : Javadoc de l'API 1.5. Rechercher des informations et Comprendre un code existant

API Java : Rechercher des informations sur les types de données que lon manipule ou que lon souhaite manipuler ? ArrayList : Peut on ajouter un élément à une position donnée ? Peut on enlever à une position donnée ? Quexiste-t-il comme autre type de données du même style ? Comment construit on une ArrayList ? Avec un tableau est ce possible ?

API Java : Comprendre un code existant String input = reader.getInput(); if(input.startsWith("bye")) { finished = true; } Que fait startsWith("bye") ? Comment peut on trouver linformation ? Que fait getInput()? Comment peut on trouver linformation ?

Comment chercher dans lAPI ? Organisation par packages Quels sont les packages que vous connaissez ? java.util java.lang Où pouvez vous trouver la classe String ? La classe ArrayList ? Quels sont les packages qui pourront vous servir ?

Pourquoi trouve-t-on linformation ? Parce que les classes sont documentées Documentation standardisée avec génération dans un format HTML Documentation accessible par un browser web On documente : lAPI des classes Interface des classes : ensemble des méthodes et variables publiques Public vs private : accessible ou non à lextérieur de la classe

Documenter quoi ? Interface vs implémentation Limplémentation reste cachée La documentation inclut : Le nom de la classe Une description textuelle générale de la classe La liste des constructeurs et des méthodes publiques : les signatures Valeurs de retours et paramêtres Description textuelle (pré_conditions, post conditions, objectifs…) L interface de la classe UTILE pour son usage

Ce qui ne concerne pas lusage La partie Implémentation : Les variables dinstances (statut private) Les méthodes internes à la classes (statut private) Le corps de chaque méthode et constructeurs (code source) Implémentation de la classe Elle concerne les développeurs Autre documentation : conception UML, etc

Comment écrire la Javadoc ?

Usage de votre code Votre code est destiné à être utilisé VOUS DEVEZ Documenter votre code 2 documentations : à destination des usagers de la classe : ils ne doivent pas connaître limplémentation. Livraison des.class Et Documentation de linterface de la classe : javadoc à destination des développeurs qui doivent faire évoluer votre code: ils doivent connaître limplémentation. Livraison des.java Et Documentation de limplémentation de la classe : UML, cahier des charges, spécifications détaillées, commentaires dans le code

Javadoc et classe POUR UNE CLASSE Class comment: /** * The Responder class represents a response * generator object. It is used to generate an * automatic response. * Michael Kölling and David J. Barnes 1.0 (1.Feb.2002) */

JAVADOC et méthode Commentaire pour une méthode /** * Read a line of text from standard input (the text * terminal), and return it as a set of words. * prompt A prompt to print to screen. A set of Strings, where each String is * one of the words typed by the user */ public HashSet getInput(String prompt) {... }

Comment générer la javadoc : page HTML javadoc ClasseATester.java OPTION -help Donne en ligne les différentes options Génération du fichier ClasseATester.html pour en savoir plus ts/

Comment faire et utiliser des packages ?

Comment travaille-t-on avec des packages ? Les classes dun package (bibliothèque de classes) doivent être importées (comme des livres que lon emprunte…) Utilisation de la clause import Pour importer une seule classe : import java.util.ArrayList; Pour importer toutes les classes dun package : import java.util.*; Importation inutile pour les classes de java.lang (tout le monde a ces livres ). Une fois importées les classes ont toutes la même visibilité En cas de conflit, mettre le nom complet de la classe java.util.ArrayList Ex : la classe MaClasse existe dans 2 packages : monnompackage et autrenompackage On peut les distinguer à laide des noms complets : monnompackage.MaClasse ou autrenompackage.MaClasse

Packaging de votre code Implication dans chaque classe de cette bibliothèque package nompackage; Instruction à ajouter au début des classes appartenant au package Implication sur lorganisation des fichiers Mettre les classes compilées sous un répertoire de nom nompackage Compiler (placé au dessus du répertoire de nom nompackage) javac nompackage/ClassePackagée.Java Exécuter (placé au dessus du répertoire de nom nompackage) java nompackage.ClassePackagee

Packaging de votre code et compilation ATTENTION A LA COMPILATION DUNE CLASSE Les classes utilisées doivent être déjà compilées et visibles ORDRE de Compilation important VISIBILITE importante Désignation des répertoires où sont stockés les classes possibles VARIABLE DENVIRONNEMENT : CLASSPATH OPTION DE COMPILATION ET DEXECUTION : -cp AUTRE OPTION PRATIQUE -d

Packaging de votre code Pour une meilleure livraison Pour regrouper les classes utilisées dans le même contexte