eclipse - XQuery

eclipse - XQuery

Eclipse avancé : tests, restructurations


Objectif

Augmenter sa productivité en Java, en maîtrisant les fonctionalités avancées d'eclipse et les bonnes pratiques induites: restructuration, programmation pilotée par les tests, CVS, plugins, etc.

eclipse - XQuery

Profils Stagiaires
développeurs, chef de projet, architectes techniques

Pré-requis

connaître Java

Plan
eclipse - XQuery

Les bases: créer un projet, une classe, une exécution
Edition de code: la complétion, les diagnostics, les suggestions
Le debug, les vues variable et display
Perspectives et vues, comment les réarranger

Gestion des bibliothèques, les variables d'eclipse, les javadocs
Bien gérer workspaces, projets et répertoires de sources
La configuration d'eclipse

Navigation: par identificateurs, implémenteurs, utiliseurs, hiérarchie, arbre d'appels; analyse d'impact
Le menu source de l'éditeur: génération de code: accesseurs, délégation, internationalisation

Refactoring: Extraire, Renommer, Déplacer (Méthode, classe, variable)
D'une classe à une autre quelconque
Entre classes parentes et descendantes
Changer arguments méthode

Plugins: panorama, sites Web, installation par zip ou par Internet

Le diagnostic de code avec PMD; trouver les copiés-collés; définir ses propres critères
Analyse de dépendances avec JDepend

Développement dirigé par les tests: JUnit, les apports des procédures de tests, principes de JUnit, intégration de JUnit dans Eclipse, méthodologie de tests, la non-régression, la couverture, la méthode eXtreme Programming.

Ant: la construction d'application à partir des sources: intégration de JUnit dans Eclipse, cibles et taches

CVS et travail en équipe
Présentation de CVS, son intégration dans Eclipse, mise en place d'un repository, connection à une base CVS sur Internet

Compléments sur le Refactoring (restructuration) d'après le livre de référence par Martin Fowler: "Refactoring: Improving the design of existing code"

Définition d'un Refactoring: Changement à fonctionalité égale, Appuyé par des tests, Par étapes successives
Les "bad smells"
Défauts majeurs: méthodes et classes trop longues, duplication de code, mauvais nommage, arguments trop nombreux
Tournures non Orientées Objet: pas d'encapsulation des champs, Switch, Cast (transtypage), instanceof, Trop de static
Défauts architecturaux: comportement métier et couche infrastructure mélangés, trop de dépendances croisées, hiérarchies d'héritage parallèles

Catalogue des Refactoring: composer les méthodes, déplacer du code entre objets, organiser les données, simplifier les tests,  simplifier les appels de méthodes, traiter l'héritage


Travaux pratiques
eclipse - XQuery
Edition Java rapide avec la complétion et la documentation intégrée.

Installation d'un plugin d'eclipse.

Utiliser eclipse et PMD pour diagnostiquer les défauts d'un code source.

Enchaîner une suite de restructurations automatiques et manuelles pour supprimer les défauts constatés.

Implémenter une fonctionalité en commençant par écrire le test Junit, en utilisant eclipse pour créer le squelette du code au fur et à mesure.

Utiliser CVS pour partager efficacement du code avec une équipe