Ce livre s’adresse aux développeurs qui souhaitent découvrir les principaux outils de l’environnement de développement intégré Apache NetBeans utiles pour le développement, la maintenance et l’industrialisation d’applications avec le langage Java. Dans chaque chapitre, les notions théoriques essentielles sont expliquées puis mises en pratique grâce à des exemples détaillés et des exercices corrigés.
Les auteurs commencent par décrire la mise en fonctionnement d’Apache NetBeans et de...
Ce livre s’adresse aux développeurs qui souhaitent découvrir les principaux outils de l’environnement de développement intégré Apache NetBeans utiles pour le développement, la maintenance et l’industrialisation d’applications avec le langage Java. Dans chaque chapitre, les notions théoriques essentielles sont expliquées puis mises en pratique grâce à des exemples détaillés et des exercices corrigés.
Les auteurs commencent par décrire la mise en fonctionnement d’Apache NetBeans et de l’environnement Java sur un poste de développement, avant de détailler les notions importantes de la programmation orientée objet grâce à la réalisation d’un programme. La prise en main de l’IDE est approfondie grâce à la présentation de fonctionnalités facilitant et accélérant les développements.
Dans la suite du livre, le lecteur aborde des connaissances plus poussées lui permettant de développer des applications plus riches. Un cas concret d’utilisation propose une comparaison de deux librairies graphiques, Swing et JavaFX. La notion d’industrialisation d’une application est illustrée avec la présentation en profondeur d’outils comme Git, Maven ou SonarQube, très fréquemment rencontrés dans le milieu professionnel et nécessaires à la mise en place d’une maintenance efficace et pérenne des applications développées avec Java. Un exercice corrigé permet au lecteur de découvrir la technique de développement TDD (Test Driven Development) utilisée pour réaliser des logiciels de qualité.
La conception et l’exploitation de services sont décrites avec le développement de services web de type SOAP et REST, qu’ils soient automatiquement générés grâce aux outils d’Apache NetBeans ou entièrement développés grâce au framework Spring.
Les principaux patrons de conception, Model-View-Controller et Model- View-Presentation, sont également étudiés puis mis en pratique grâce aux outils proposés par Apache NetBeans et aux librairies JSP et JSF utilisées dans le cadre de développement d’applications Java EE.
Pour aller plus loin, les auteurs familiarisent également le lecteur avec le profilage d’applications Java pour mettre en place une analyse en profondeur des performances d’une application Java.
Avant de commencer : les grands principes de fonctionnement de la JVM
1. Gestion automatique de la mémoire
a. Les grandes zones mémoire de la JVM
b. Les mécanismes de recyclage : garbage collector
2. Aspect multithread
Premier profilage d'une application avec NetBeans
1. Déclenchement et configuration du premierprofilage
a. Lancement et calibration
b. Choix des métriques
c. Télémétrie globale de l’application
2. Techniques de relevés pour le profilage
a. Le sampling
b. L’observation continue
Analyses possibles relatives à la mémoire
1. Analyse globale de la mémoire
a. Observation et interprétation du comportementde la mémoire
b. Observation de la mémoire dans un cas demauvaise conception
2. Analyse des instances en cours d’exécution
a. Observation des instances en mode sampling
b. Observation continue des instances en cours d’exécution
c. Avantages et limites de l’observation de la mémoireen cours d’exécution
3. Analyses de la mémoire à froid
a. Réalisation d’un dump et découvertedu HeapWalker
b. Comparaison de dumps
c. Console OQL
Analyses possibles relatives à l'utilisation du processeur
Autres possibilités du profileur de NetBeans
Romain LEMOUNEAU
Romain LEMOUNEAU a travaillé pendant plus de 7 ans dans le développement de logiciels, d’abord en tant que développeur, puis en tant que leader technique. Ses expériences lui ont permis de mettre en oeuvre des technologies Java et client-serveur dans le but de développer et maintenir des applications de gestion.
Thomas Broussard a travaillé pendant plus de 9 ans en Recherche et Développement, d'abord en tant que développeur, puis en tant que coordinateur technique et enfin responsable de l'innovation. Ses expériences lui ont permis de mettre en œuvre tout le panel des technologies Java dans le but de créer des produits innovants. Fort de ces expériences, il assume depuis 6 ans, en parallèle de son poste principal, une activité d'enseignant en modélisation et développement Java auprès d'écoles d'ingénieurs.