En raison d’une maintenance technique, la boutique Editions ENI sera inaccessible ce mercredi soir à compter de 21h, jusqu’à 2h jeudi matin. Nous vous invitons à passer votre commande avant 20h30. Merci pour votre compréhension. L’équipe des Editions ENI
  1. Livres et vidéos
  2. Apache NetBeans - Développez vos applications en Java

Apache NetBeans Développez vos applications en Java

  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7
  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne

Présentation

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.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

  • Installation et configuration initiale
    • 1. Introduction
    • 2. Installation du kit de développement Java
      • 2.1 Avant de commencer : note sur la plateforme Java
        • 2.1.1 Les éléments de la plateforme : JVM, JRE, JDK
        • 2.1.2 Focus sur la JVM
        • 2.1.3 Un environnement pour chaque utilisation
      • 2.2 Quel JDK sélectionner ?
      • 2.3 Quelle version sélectionner ?
    • 3. Installation de NetBeans
    • 4. Configuration initiale
  • Créer son premier projet avec NetBeans
    • 1. Introduction
    • 2. Les types de projets Java
    • 3. Création d'un projet Java simple avec Maven
    • 4. Notions de programmation orientée objet
      • 4.1 Définition d'une classe
      • 4.2 Modélisations, classes, types et exécution en Java
        • 4.2.1 Les classes métier
        • 4.2.2 Les points d'entrée d'exécution du programme
      • 4.3 Notion de package
        • 4.3.1 Définition
        • 4.3.2 Règle de nommage
    • 5. Présentation de l'interface de NetBeans
    • 6. Création d'une classe Java avec NetBeans
      • 6.1 Création d'une classe
      • 6.2 Création d'un attribut
      • 6.3 Création d'un accesseur et d'un mutateur
      • 6.4 Création d'une méthode
    • 7. Définition d’un point d’entrée pour l’exécution de son programme
    • 8. Compilation d'un projet
      • 8.1 Définition du compilateur
      • 8.2 Compilation d'un projet avec NetBeans
    • 9. Exécution d'un projet
      • 9.1 Sélectionner le point d’entrée du programme
      • 9.2 Construire son projet avec NetBeans
    • 10. Documentation d'une application
      • 10.1 Tags Javadoc
      • 10.2 Analyse de la Javadoc
      • 10.3 Exécution de la Javadoc
    • 11. Exercice corrigé : Calcul géométrique
  • Les outils du développeur
    • 1. Introduction
    • 2. Débogage d'une application grâce à NetBeans
      • 2.1 Découvrir le mode debug
      • 2.2 Apprendre les notions importantes
        • 2.2.1 Les déplacements pas à pas
        • 2.2.2 Les points d'arrêts
        • 2.2.3 Les observateurs
      • 2.3 Déboguer un programme
    • 3. Capacités de génération de code
      • 3.1 Les attributs
      • 3.2 Les constructeurs
      • 3.3 Les méthodes equals() et hashCode()
      • 3.4 La méthode toString()
      • 3.5 Les méthodes comportementales
      • 3.6 La méthode clone()
        • 3.6.1 Le clonage en surface
        • 3.6.2 Le clonage en profondeur
    • 4. Refactoring avec NetBeans
      • 4.1 L'introduction de variables
      • 4.2 L'introduction de constantes
      • 4.3 L'introduction d'attributs
      • 4.4 L'introduction de méthodes
      • 4.5 L'introduction de paramètres
    • 5. Internationalisation d'un projet
    • 6. Diagrammes de classes UML avec NetBeans
      • 6.1 Installation du plugin easyUML
      • 6.2 Génération d'un diagramme de classes
    • 7. Groupement de projets
  • Le développement d'applications riches
    • 1. Introduction
    • 2. Objectif des applications riches
    • 3. Programmation graphique : composants et évènements
    • 4. Bonnes pratiques pour la programmation au sein des frameworks graphiques
      • 4.1 Séparation de la couche métier et de la couche de présentation
      • 4.2 Intrication du code métier et du code de présentation
      • 4.3 Débordement de la couche métier dans la couche graphique
    • 5. Cas concret d'utilisation d'une librairie graphique et implémentation avec NetBeans
    • 6. Implémentation d'un exemple avec Swing
      • 6.1 Maquettage avec Swing
        • 6.1.1 Création d'un projet Java pour démarrer avec Swing
        • 6.1.2 Fonctionnement global de Swing et intégration dans NetBeans
        • 6.1.3 Édition des propriétés, génération d'évènements
        • 6.1.4 Utilisation de l'historique
      • 6.2 Composants et programmation des interactions
        • 6.2.1 Manipulation du JTable
        • 6.2.2 Manipulation du JFileChooser
        • 6.2.3 Mise en place d'un thème
    • 7. Implémentation d'un exemple avec JavaFX
      • 7.1 Différence d'approche entre Swing et JavaFX
      • 7.2 Maquettage avec JavaFX
        • 7.2.1 Création d'un projet JavaFX
        • 7.2.2 Configuration de Scene Builder dans NetBeans
        • 7.2.3 Première exécution
        • 7.2.4 Fonctionnement global de JavaFX
        • 7.2.5 Prise en main de SceneBuilder
        • 7.2.6 Création d'un panneau (Scene)
        • 7.2.7 Programmation des interactions avec l'utilisateur
      • 7.3 Composants et programmation des interactions
        • 7.3.1 Manipulation du TableView
        • 7.3.2 Manipulation du FileChooser
    • 8. Swing ou JavaFX ?
  • Vers l’industrialisation du logiciel
    • 1. Introduction
    • 2. Travail en équipe : intégration avec Git
      • 2.1 Fonctionnement de Git
        • 2.1.1 Git, un système distribué
        • 2.1.2 L'aspect concurrent de Git
      • 2.2 Git : branches et tags
      • 2.3 Partage et modification d'un projet avec Git et NetBeans
        • 2.3.1 Intégration initiale
        • 2.3.2 Réalisation et intégration (locale et distante) de modifications
        • 2.3.3 Intégration de la modification sur le repository local
        • 2.3.4 Intégration de la modification dans un repository distant
      • 2.4 Suivi des modifications
        • 2.4.1 Intégration dans l'éditeur de code
        • 2.4.2 Affichage de l’historique d’un fichier
        • 2.4.3 Gestion des conflits
    • 3. Construction du projet : utilisation de Maven dans NetBeans
      • 3.1 Fonctionnement de Maven
        • 3.1.1 Maven : la convention comme philosophie
        • 3.1.2 Structuration du projet
        • 3.1.3 Gestion des dépendances
        • 3.1.4 Système de coordonnées
        • 3.1.5 Référentiels (repository) d'artefacts
        • 3.1.6 Nature d'une dépendance : packaging et classifier
      • 3.2 Configuration de la construction du projet
        • 3.2.1 Flux de construction d'un projet Maven
        • 3.2.2 Instructions de construction grâce aux plugins
        • 3.2.3 Exemple : mise en œuvre avec la construction de la Javadoc
        • 3.2.4 Configuration des plugins Maven
      • 3.3 Déclenchement de constructions depuis NetBeans
        • 3.3.1 Première construction
        • 3.3.2 Historiques et enregistrement des paramètres de construction dans NetBeans
      • 3.4 Ajout de dépendances
        • 3.4.1 Ajout assisté dans le pom.xml
        • 3.4.2 Visualisation de l'arbre des dépendances
        • 3.4.3 Conflits et exclusion de dépendance
      • 3.5 Réutilisation de projets : héritage et composition
        • 3.5.1 Définition d'un projet parent
        • 3.5.2 Déclaration du parent dans les projets fils
        • 3.5.3 Effet de la déclaration d'un parent sur le projet
        • 3.5.4 Limites de l'héritage
        • 3.5.5 Composition grâce au BOM
      • 3.6 Construction groupée de projet : projets multimodules
        • 3.6.1 Conception d'un projet multimodule
        • 3.6.2 Distinction entre le réacteur et le parent
    • 4. Exécution des tests unitaires dans NetBeans
      • 4.1 Méthodologie de définition du test unitaire
        • 4.1.1 Approche systématique : hypothèse, action, vérification
        • 4.1.2 Principe d'indépendance et de transparence des tests
        • 4.1.3 Méthodologie de développement intégrant les tests : BDD et TDD
        • 4.1.4 Exemple de formalisation du test BDD
        • 4.1.5 Différence entre une erreur (error) et un échec (failure)
      • 4.2 Définition d'un test unitaire avec JUnit
        • 4.2.1 Écriture d'un premier test
        • 4.2.2 Exécution des actions systématiques grâce aux annotations
        • 4.2.3 Assertions
        • 4.2.4 Interprétation du résultat des tests
        • 4.2.5 Génération des tests unitaires par NetBeans
    • 5. Analyse de la qualité de code intégrée à l’outil
      • 5.1 Utilisation de l'analyseur de code intégré de NetBeans
        • 5.1.1 Analyse globale
        • 5.1.2 Analyse sur critère unique
        • 5.1.3 Analyse en vue d'une migration
      • 5.2 Couverture des tests
        • 5.2.1 Couverture en lignes et couverture en branches
        • 5.2.2 Configuration et analyse de la couverture de test dans NetBeans
        • 5.2.3 Comparaison avec la couverture de test de JaCoCo - Java Code Coverage
      • 5.3 Intégration de SonarQube
        • 5.3.1 Introduction à SonarQube
        • 5.3.2 Installation d'un serveur SonarQube local
        • 5.3.3 Les sept axes de la qualité selon SonarQube
        • 5.3.4 Installation de SonarLint4Netbeans
        • 5.3.5 Analyse d'un projet grâce au plugin Maven sonar
    • 6. Exercice corrigé : Conception d'un service de lecture de fichiers CSV en approche TDD
      • 6.1 Spécifications de l'exercice
        • 6.1.1 Préparation du projet
        • 6.1.2 Modélisation des données
        • 6.1.3 Désérialisation grâce à la classe CSVReader
      • 6.2 Solution de l'exercice
        • 6.2.1 Préparation du projet
        • 6.2.2 Modélisation des données
        • 6.2.3 Désérialisation grâce à la classe de service CSVReader
        • 6.2.4 Recherche d'amélioration
  • La conception et l'exploitation de services
    • 1. Introduction
    • 2. Créer une base de données
      • 2.1 Créer une base de données H2
      • 2.2 Initialiser la base de données H2
    • 3. Développer des services REST pour exposer des APIs
      • 3.1 Notion d'API
      • 3.2 Principe KISS
      • 3.3 Veiller à l’aspect Stateless de l’API
      • 3.4 Verbes de la grammaire REST
      • 3.5 Installation d'un serveur d'applications WildFly
      • 3.6 Création d'un projet d'application Web
      • 3.7 Génération d'entités et services REST
        • 3.7.1 À propos des entités et de JPA
        • 3.7.2 Manipulation
        • 3.7.3 Bonnes pratiques de conception
      • 3.8 Configuration et test de services REST
    • 4. Développer des services SOAP
      • 4.1 Créer un projet Spring Boot
      • 4.2 Générer les entités Java
      • 4.3 Créer des objets de transfert de données
      • 4.4 Développer des services Soap
      • 4.5 Définir l'adresse d'un service web
      • 4.6 Exécuter un projet
      • 4.7 Tester des services Soap
    • 5. Exercice corrigé : développer une API REST avec Spring
      • 5.1 Créer un projet Spring Boot
      • 5.2 Créer l'entité Etudiant
      • 5.3 Créer la classe EtudiantDAO
      • 5.4 Créer la classe EtudiantController
      • 5.5 Tester l'API REST
  • NetBeans, Java et le Web
    • 1. Introduction
    • 2. Présentation de l'architecture Java EE
      • 2.1 Le pattern Modèle - Vue - Contrôleur
        • 2.1.1 Composants de base du Web en Java
        • 2.1.2 MVC, MVC 2 et les frameworks Java
      • 2.2 Le pattern MVP
    • 3. Création d'une interface web avec JSF
      • 3.1 Créer une application web
      • 3.2 Générer les entités Java
      • 3.3 Générer les pages JSF
      • 3.4 Tester l'interface web
      • 3.5 Manipuler la palette JSF de NetBeans
    • 4. Création d'une interface JSP
      • 4.1 Créer une première page JSP
      • 4.2 Développer une application en JSP
        • 4.2.1 Les balises
        • 4.2.2 Les directives
        • 4.2.3 Le développement d’une page JSP
        • 4.2.4 Le développement d’une servlet
        • 4.2.5 Le développement du JavaScript
    • 5. Exercice corrigé : développement d’une application web JSF
      • 5.1 Créer une application Web
      • 5.2 Créer l'entité Etudiant
      • 5.3 Créer la classe EtudiantDAO
      • 5.4 Créer la classe EtudiantPresenter
      • 5.5 Créer les pages JSF
      • 5.6 Tester l'application JSF
      • 5.7 Aller plus loin
  • Le profilage d'applications Java
    • 1. Introduction
    • 2. Avant de commencer : les grands principes de fonctionnement de la JVM
      • 2.1 Gestion automatique de la mémoire
        • 2.1.1 Les grandes zones mémoire de la JVM
        • 2.1.2 Les mécanismes de recyclage : garbage collector
      • 2.2 Aspect multithread
    • 3. Premier profilage d'une application avec NetBeans
      • 3.1 Déclenchement et configuration du premier profilage
        • 3.1.1 Lancement et calibration
        • 3.1.2 Choix des métriques
        • 3.1.3 Télémétrie globale de l'application
      • 3.2 Techniques de relevés pour le profilage
        • 3.2.1 Le sampling
        • 3.2.2 L'observation continue
    • 4. Analyses possibles relatives à la mémoire
      • 4.1 Analyse globale de la mémoire
        • 4.1.1 Observation et interprétation du comportement de la mémoire
        • 4.1.2 Observation de la mémoire dans un cas de mauvaise conception
      • 4.2 Analyse des instances en cours d'exécution
        • 4.2.1 Observation des instances en mode sampling
        • 4.2.2 Observation continue des instances en cours d'exécution
        • 4.2.3 Avantages et limites de l'observation de la mémoire en cours d'exécution
      • 4.3 Analyses de la mémoire à froid
        • 4.3.1 Réalisation d'un dump et découverte du HeapWalker
        • 4.3.2 Comparaison de dumps
        • 4.3.3 Console OQL
    • 5. Analyses possibles relatives à l'utilisation du processeur
    • 6. Autres possibilités du profileur de NetBeans
    • Index

Auteurs

Romain LEMOUNEAUEn savoir plus

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 BROUSSARDEn savoir plus

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.

Caractéristiques

  • Nombre de pages 438 pages
  • Parution janvier 2021
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-02850-2
    • EAN : 9782409028502
    • Ref. ENI : EIJAVNETB
  • Parution janvier 2021
    • HTML
    • ISBN : 978-2-409-02851-9
    • EAN : 9782409028519
    • Ref. ENI : LNEIJAVNETB

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (300 Ko)