Outils de tests, logs et documentation Frédéric Moalannée 2010/2011 POO.

Slides:



Advertisements
Présentations similaires
Créer un lien 1-Sélectionner le texte 2-Choisir l'outil « lien »
Advertisements

DTD Sylvain Salvati
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.
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
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
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.
Dimensions et Java : Plug-in, Build et EAR Elisabeth BAUDOIN STIME CLUB UTILISATEURS ALMA DU 23 NOVEMBRE 2010.
Paquetages: Définitions Les classes Java sont regroupées en paquetages (packages en anglais) Ils correspondent aux « bibliothèques » des autres langages.
(Classes prédéfinies – API Java)
Introduction à Java - les paquetages -
C.
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
JAV - TD 6 Structures de données JAVA
2ième Classe (Mercredi, 13 Octobre) C++ Intro CSI2572.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Page de garde Doc++ Maîtrise dinformatique Février 2002.
LE PORTFOLIO ÉLECTRONIQUE étape par étape Richard Angeloro Responsable pédagogique des stages préscolaire et primaire avril 2007.
Développement Mobile : Android
Programmation orientée objet
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)
Interfaces (fin) classes locales et internes, Object, clonage.
Introduction à la programmation (Java)
FICHIERS : Définition : Algorithme général:
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.
Maîtriser le langage HTML Les Formulaires. Dans cette section on verra comment diviser un formulaire en plusieurs blocs principaux avec un titre pour.
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.
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
COURS DE PROGRAMMATION ORIENTEE OBJET :
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.
Les assertions en Java.
Module I-C3 : Applications Web IUT R&T 2e année
APPLETS. Applets : généralités Applet : application s'exécutant dans une page HTML Le ByteCode (fichiers.class) est téléchargé depuis un serveur. L'exécution.
Annexe 1 Tests unitaires d'applications Java avec JUNIT
Exploration de la programmation android Formation Assurer par: Club FreeWays Réalisé par: BOUHJJA Lamia.
LIFI-Java 2004 Séance du Mercredi 22 sept. Cours 3.
Formation Site Web Animation Pédagogique Ecole de Dommartin.
LE HTML ISN Terminale S Un peu d’histoire …
Doxygen. 2 Doxygen : qu’est-ce que c’est ? Système de documentation pour programmes –C++, Java, Objective-C, IDL –PHP, C# Génère automatiquement : –Html,
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
 Syntaxe du langage PHP
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Auvray Vincent Blanchy François Bonmariage Nicolas Mélon Laurent
IUT SRC Année 2004/2005Antonio Capobianco 1 HTML>Formater du texte>Les titres Définir les titres HTML distingue 6 niveaux de titre : Titre N°1 Titre N°2.
Initiation au JavaScript
Module : Langage XML (21h)
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
Les Java Server Pages Dans ce chapitre, nous allons :
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.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 3.
Language html Hyper Text Markup Language
Language html & CSS “Examen”. Un exemple La quelle de ces balises n’est pas une balise obligatoire?
Dreamweaver Séance 1.
Guillaume MICHAUD – Yvan LECOMTE
Plan de la présentation Le langage HTML Dreamweaver MX Les premiers outils pour créer une page web :  Propriétés d’une page  Création de cadres  Création.
Introduction au HTML Qu’est ce que le HTML ?
BlueJ_VII 1 Java, les objets : tout de suite ! Conception de classes (1) Notes de cours associées au chapitre 7 tutorial BlueJ
LES CLASSES ET LES OBJETS
1 er séance SI28 A2004 YIN Lei Emmanuel Eugene. Plan de l’exposé  Introduction au HTML  Le HTML dans le bloc-notes (notepad)  Présentation de Dreamweaver.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
INSCRIPTIONS SPORTIVES
Transcription de la présentation:

Outils de tests, logs et documentation Frédéric Moalannée 2010/2011 POO

2 De nombreux outils à laide du développeur Les IDE Les générateurs de documentation : exemple de javadoc Gestion des traces dexécution : logs et assertions Lautomatisation de tests unitaires : JUnit Les systèmes de gestion de version

3 Gestion de la documentation : javadoc

4 Généralités javadoc produit de la documentation en partant de commentaires particuliers insérés dans le code source des classes (/**... */) On peut ainsi documenter paquetages classes ou interfaces variables d'instance méthodes

5 Format des commentaires Les commentaires peuvent contenir du texte simple des tags HTML de mise en forme de texte (italique, caractère gras, caractères à espacement fixe,…) ; un tag bien utile est (et ) pour inclure du code dans les commentaires des tags spéciaux à javadoc, qui commencent par le Les commentaires doivent être placés juste avant ce qu'ils commentent

6 Caractères spéciaux Les caractères liés à HTML comme « » sont interprétés spécialement par javadoc « < » doit être écrit « < » dans la javadoc Depuis le JDK 5.0 les permet dinsérer plus facilement les caractères spéciaux ; par exemple A C} sera affiché A C par la javadoc A C} fait la même chose en ajoutant la police de caractères du tag HTML

7 Insérer une référence Les permettent dinsérer une référence vers une autre partie de la documentation ou même vers une autre documentation quelconque Plusieurs formats peuvent être utilisés pour indiquer ces références ; ils sont donnés dans les transparents suivants

8 Formats de référence (1) chaîne de caractères quelconque : la chaîne sera affichée telle quelle dans la javadoc Exemple "The Java Programming Language" label : lien vers une adresse Web (adresse absolue ou relative) Exemple Java Spec

9 Formats de référence package.Classe#membre label lien vers un autre endroit de la javadoc (ou vers une autre javadoc si loption -link est utilisée au lancement de la commande javadoc Le texte du lien sera « label » Remarquez le # à la place d'un «. » entre le nom de la classe et le nom de la méthode

10 Formats pour package.Classe#membre Le membre peut être un constructeur, une méthode ou une variable dinstance On peut aussi désigner une classe par package.Classe, ou une classe interne par package.Classe.ClasseInterne (ne jamais omettre la classe englobante, même si le commentaire est dans la classe englobante) On peut aussi désigner un paquetage fr.miage.tools

11 Formats pour package.Classe#membre Si la classe appartient au paquetage de la classe documentée ou si la classe est importée, on peut omettre le nom du paquetage Classe Si le membre appartient à la classe qui est documentée, on peut omettre package.Classe : Utilisez la méthode #getComponentAt(int, int) getComponentAt}. Si la méthode nest pas surchargée, le nom de la méthode suffit ; sinon il faut indiquer sa signature

12 Section « see also crée une entrée dans la section « see also » de la documentation Exemples java.lang.Integer#parseInt label (si le 1er caractère est "<", c'est un lien "texte quelconque"

13 "The Java Programming Java Spec Pour désigner des méthodes de la classe ou dune autre classe String#equals(Object) equals Le label qui sera affiché Les classes sont cherchées dans le classpath Pour les méthodes surchargées

14 Liens entre commentaires nom-classe#membre label} permet de placer un lien n'importe où dans la documentation (ne pas oublier les accolades) Exemple : Utilise la méthode #getComponentAt(int, int) a une syntaxe identique mais le label est affiché dans la police de caractères du texte ordinaire et pas dans la police du code

permet d'indiquer une version depuis laquelle ce qui est commenté a été introduit Exemple JDK1.1

16 Commentaires de classe et description de ce que représente le paramètre de type (depuis le JDK nom indique l'auteur (plusieurs fois si plusieurs texte indique le ou les auteurs en utilisant le texte précise la version Ces 2 tags ne sont utilisés dans la documentation que si on donne les options -author et -version de la commande javadoc

17 Commentaires de méthodes Tous les tags de même type doivent se suivre Les descriptions peuvent s'étaler sur plusieurs paramètre description documente un paramètre de la description documente un paramètre de type de la méthode (ne pas omettre les description documente ce que retourne la classe_exception description documente une exception (on peut aussi

18 Résumé de commentaire La première phrase du commentaire dun membre dune classe constitue le résumé du commentaire Ce résumé est affiché dans la section « résumé » Le reste peut être vu en suivant le lien de la section résumé La « première phrase » se termine par un point suivant dun espace ou dune fin de ligne ou par un tag javadoc return

19 Exemple de documentation de méthode /** * Returns the character at the specified index. An index * ranges from 0 to length() - 1. * index the index of the desired character. the desired character. StringIndexOutOfRangeException * if the index is not in the range 0 * to length()-1. java.lang.Character#charValue() */ public char charAt(int index) {

20 Héritage des commentaires Si la méthode dune classe na pas de commentaire, elle hérite automatiquement des commentaires de la méthode quelle redéfinit ou implémente (sils existent) Avant la version 5 de java, si la méthode ajoutait un commentaire, il fallait ajouter « » pour demander cet héritage des commentaires Depuis la version 5, les commentaires pour un paramètre, la valeur retour ou une exception sont hérités automatiquement ; dautres commentaires peuvent être ajoutés dans la méthode

21 Commentaires de paquetage Ils doivent être placés dans un fichier nommé package-info.java placé dans le répertoire des fichiers source du paquetage, avec les fichiers.java Avant le JDK 5.0, le fichier devait sappeler package.html ; le JDK 5.0 accepte un des 2 fichiers (mais pas les 2) Les contenus de package-info.java et de package.html diffèrent

22 package.html Cest un fichier html ordinaire Tout ce qui est entre et se retrouve dans la documentation La 1ère phrase (jusqu'à un ".") doit être un résumé de ce que contient le paquetage Exemples de tags utilisables dans le corps du fichier @link

23 Exemple de package.html Ce paquetage 1.1

24 package-info.java Il ressemble à un commentaire javadoc habituel La 1ère phrase (jusqu'à un ".") doit être un résumé de ce que contient le paquetage Exemples de tags utilisables dans le corps du fichier @link

25 Exemple de package- info.java /** * Ce paquetage.... * *... * (voir la classe truc.Classe1}) * java.awt */ package truc.machin;

26 Commentaires généraux De même, un fichier de nom quelconque (typiquement un fichier placé à la racine des fichiers source et nommé overview.html ) peut être placé dans le répertoire parent de tous les fichiers source ; ce fichier contient des commentaires sur tout le code Le contenu de ce fichier sera affiché quand l'utilisateur cliquera sur le lien « Overview » de la documentation si on génère la documentation avec loption « –overview nom- fichier.html »

27 Fichiers annexes Si la documentation dun paquetage utilise des fichiers annexes, par exemple des images, on doit les placer dans un répertoire nommé doc-files du paquetage Ces fichiers pourront être référencés par un nom relatif commençant par doc-files : /** * Image du bouton : * */

28 Syntaxe de la commande javadoc [options…] [cheminsSourcesClasses…] [nomsPaquetages] Si on donne des noms de paquetages en paramètres, les fichiers sources doivent être dans un répertoire qui correspond au nom du paquetage Loption –sourcepath indique sous quel répertoire trouver les sources des classes des paquetages quand on donne nomsPaquetages ; elle nest pas utilisée si on donne cheminsSourcesClasses

29 Options de la commande (1) Options (quelques options seulement) : -d répertoire : indique le répertoire dans lequel mettre la documentation (répertoire courant par défaut) -protected, -public, -package, -private : indique les membres et constructeurs qui apparaîtront dans la documentation ( protected par défaut) -author, -version : lauteur et la version seront affichés (par défaut, ils ne le sont pas)

30 Options de la commande (2) -link URLautreJavadoc : permet de faire des liens vers une autre documentation javadoc préexistante (on peut donner plusieurs options – link) ; on peut donner un chemin relatif (tenir alors compte des chemins de destination de la javadoc) ou absolu -sourcepath : indique où trouver les fichiers sources des paquetages dont on veut créer la documentation (par défaut, ils sont cherchés dans le classpath) -classpath : comme pour les autres outils

31 Options de la commande (3) -use : génère un lien qui indique par qui est utilisé une classe ou un paquetage -overview nom-fichier.html : indique un fichier qui donne une vision densemble du code du projet plusieurs options pour donner des titres, en- têtes ou pieds de pages à la documentation (voir documentation de Sun)

32 Exemples javadoc -link fr.miage.orleans.maLibrairie

33 Option -linkoffline Il est possible que la javadoc dun paquetage ne soit pas accessible pendant lexécution de javadoc car javadoc a seulement besoin du fichier package-list placé avec la javadoc de lautre paquetage En ce cas, on peut remplacer loption –link par une option « –linkoffline urlExterne repListeLocale » urlExterne est lurl quon aurait donné à loption – link repListeLocale est le répertoire où on a rangé le fichier package-list manquant, que lon a réussi à récupérer par un moyen ou par un autre

34 Fichier package-list Le fichier package-list est généré automatiquement par javadoc ; il est placé dans le répertoire qui contient la javadoc générée par une commande javadoc unique Il contient les noms des paquetages dont le répertoire contient la javadoc Il est utilisé par javadoc pour faire les liens HTML qui référencent des éléments dun autre paquetage : quand il y a une option –link, il utilise ce fichier pour savoir rapidement comment faire ces liens (il ne rentre pas dans les détails des fichiers associés à la javadoc extérieure)

35 Problème avec les liens Si on génère séparément la javadoc de 2 paquetages p1 et p2 inter-dépendants, le fichier package-list nexistera pas lors de la première exécution de javadoc et la javadoc de p1 naura pas de liens vers p2 En ce cas, il faut lancer javadoc sur p1, puis sur p2, et encore une fois sur p1