Super livre, très complet. Je recommande
Brandon GJava Les fondamentaux du langage (avec exercices pratiques et corrigés)
1 avis
Ce livre, qui couvre jusqu’à la version 17 de Java, s’adresse à tout informaticien désirant développer sous Java. Que le lecteur soit débutant ou qu’il ait déjà une première expérience avec un autre langage, il trouvera dans cet ouvrage toutes les bases nécessaires pour se familiariser rapidement avec un des langages les plus utilisés au monde.
Après une présentation de la plateforme Java SE, de son installation sous Windows et Linux et de l’environnement de développement utilisé dans le...
Consulter des extraits du livre en ligne
Aperçu du livre papier
- Niveau Initié à Confirmé
- Nombre de pages 572 pages
- Parution mars 2022
- Niveau Initié à Confirmé
- Parution mars 2022
Ce livre, qui couvre jusqu’à la version 17 de Java, s’adresse à tout informaticien désirant développer sous Java. Que le lecteur soit débutant ou qu’il ait déjà une première expérience avec un autre langage, il trouvera dans cet ouvrage toutes les bases nécessaires pour se familiariser rapidement avec un des langages les plus utilisés au monde.
Après une présentation de la plateforme Java SE, de son installation sous Windows et Linux et de l’environnement de développement utilisé dans le cadre de l’ouvrage (Eclipse, MySQL), le lecteur étudie les bases du langage et la programmation orientée objet. Parmi la richesse de l’API Java, un focus est fait sur l’API de gestion des dates, sur les nouvelles possibilités offertes par les interfaces et sur la notion de modules.
Les expressions lambda et les API sous-jacentes comme l’API java.util.function ou l’API Stream sont détaillées avant de passer à l’étude du développement d’applications graphiques avec la bibliothèque Swing. Le développement d’applications client/serveur est également présenté avec l’API JDBC assurant l’accès aux bases de données relationnelles.
Le déploiement étant une étape importante du succès d’une application, le dernier chapitre présente la distribution d’une application avec la solution classique des fichiers d’archives ou l’utilisation des outils jlink et jpackage.
De nombreux exercices avec leurs corrigés permettent au lecteur de valider ses connaissances et de mettre en pratique immédiatement les notions étudiées.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Quizinclus dans
la version en ligne !
Après une présentation de la plateforme Java SE, de son installation sous Windows et Linux et de l’environnement de développement utilisé dans le cadre de l’ouvrage (Eclipse, MySQL), le lecteur étudie les bases du langage et la programmation orientée objet. Parmi la richesse de l’API Java, un focus est fait sur l’API de gestion des dates, sur les nouvelles possibilités offertes par les interfaces et sur la notion de modules.
Les expressions lambda et les API sous-jacentes comme l’API java.util.function ou l’API Stream sont détaillées avant de passer à l’étude du développement d’applications graphiques avec la bibliothèque Swing. Le développement d’applications client/serveur est également présenté avec l’API JDBC assurant l’accès aux bases de données relationnelles.
Le déploiement étant une étape importante du succès d’une application, le dernier chapitre présente la distribution d’une application avec la solution classique des fichiers d’archives ou l’utilisation des outils jlink et jpackage.
De nombreux exercices avec leurs corrigés permettent au lecteur de valider ses connaissances et de mettre en pratique immédiatement les notions étudiées.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Quizinclus dans
la version en ligne !
- Testez vos connaissances à l'issue de chaque chapitre
- Validez vos acquis
Téléchargements
Présentation
- 1. Introduction
- 2. Historique
- 2.1 Pourquoi Java ?
- 2.2 Objectifs de la conception de Java
- 2.3 Essor de Java
- 3. Les caractéristiques du langage Java
- 3.1 Simple
- 3.2 Orienté objet
- 3.3 Distribué
- 3.4 Interprété
- 3.5 Robuste
- 3.6 Sécurisé
- 3.7 Indépendant des architectures
- 3.8 Portable
- 3.9 Performant
- 3.10 Multitâche
- 3.11 Dynamique
- 4. La plateforme Java SE
- 4.1 La machine virtuelle Java (JVM)
- 4.2 L'API Java
- 4.2.1 Les API de base
- 4.2.2 Les API d'accès aux données et d'intégration avec l'existant
- 4.2.3 Les API de gestion de l'interface des applications avec l'utilisateur
- 4.3 Les outils de déploiement des applications
- 4.4 Les outils d'aide au développement
- 6.1 Installation du JDK sur Windows
- 6.1.1 Installation de la plateforme OpenJDK
- 6.1.2 Installation de la plateforme Oracle JDK
- 6.1.3 Configuration des variables d'environnement
- 6.1.4 Tester le bon fonctionnement
- 6.2.1 Installation de la plateforme OpenJDK
- 6.2.2 Installation de la plateforme Oracle JDK
- 6.2.3 Configuration de la variable JAVA_HOME
- 6.2.4 Tester le bon fonctionnement
- 6.3.1 Téléchargement de l'installeur
- 6.3.2 Installation d'Eclipse
- 6.3.3 Création d'un projet Java
- 6.4.1 Windows
- 6.4.2 Linux
- 6.4.3 Utilisation de MySQL Workbench
- 7.1 Consultation depuis un navigateur
- 7.2 Consultation depuis Eclipse
- 8.1 Écriture du code
- 8.2 Compilation et exécution du code
- 8.2.1 Théorie
- 8.2.2 Mise en œuvre
Bases du langage
- 1. Anatomie d'un programme
- 2. Les variables
- 2.1 Introduction
- 2.2 Les emplacements
- 2.3 Le nom
- 2.4 Les types
- 2.4.1 Présentation
- 2.4.2 Les types valeurs
- 2.4.3 Les types références
- 2.5 La déclaration, l'initialisation, l'affectation
- 2.5.1 La déclaration
- 2.5.2 L'initialisation
- 2.5.3 L'affectation
- 2.6 Les types valeurs
- 2.6.1 Les types numériques entiers
- 2.6.2 Les types numériques décimaux
- 2.6.3 L'utilisation de valeurs littérales
- 2.6.4 Le type caractère
- 2.6.5 Le type boolean
- 2.7 Les types références
- 2.7.1 Les tableaux
- 2.7.2 Les chaînes de caractères
- 2.7.3 La notion de Text Blocks
- 2.7.4 Les dates et les heures
- 2.8 Les valeurs par défaut
- 2.9 La portée des variables
- 2.10 La durée de vie des variables
- 2.11 La conversion de type
- 2.11.1 Présentation
- 2.11.2 La conversion entre numériques
- 2.11.3 La conversion vers une chaîne de caractères
- 2.11.4 La conversion depuis une chaîne de caractères
- 2.12 L'inférence de type
- 5.1 Fonctionnement
- 5.2 Utilisation dans Eclipse
- 6.1 Les opérateurs unaires
- 6.2 L'opérateur d'affectation
- 6.3 Les opérateurs arithmétiques
- 6.4 Les opérateurs bit à bit
- 6.4.1 La représentation binaire des entiers
- 6.4.2 Les opérations logiques
- 7.1 Présentation
- 7.2 Structures de décision
- 7.2.1 Structure if
- 7.2.2 Structure ternaire
- 7.2.3 Structure switch historique
- 7.2.4 Structure switch nouvelle génération
- 7.3.1 Structure while
- 7.3.2 Structure do ... while
- 7.3.3 Structure for
- 7.4.1 break
- 7.4.2 continue
- 7.4.3 return
- 8.1 Exercice 1
- 8.2 Exercice 2
- 8.3 Exercice 3
- 8.4 Exercice 4
- 9.1 Exercice 1
- 9.2 Exercice 2
- 9.3 Exercice 3
- 9.4 Exercice 4
Programmation objet
- 1. Introduction
- 2. Mise en œuvre avec Java
- 2.1 Contexte
- 2.2 Création d'une classe
- 2.2.1 Déclaration de la classe
- 2.2.2 Création des champs
- 2.2.3 Création des méthodes
- 2.2.4 Création des surcharges de méthode
- 2.2.5 Passage de paramètres
- 2.2.6 Création des accesseurs
- 2.2.7 Création des constructeurs et des destructeurs
- 2.2.8 Création de champs et méthodes statiques
- 2.2.9 Utilisation des annotations
- 2.3 Utilisation d'une classe
- 2.3.1 Création d'une instance
- 2.3.2 Initialisation d'une instance
- 2.3.3 Destruction d'une instance
- 2.4 Héritage
- 2.4.1 Création d'une classe fille
- 2.4.2 this et super
- 2.4.3 Classes abstraites
- 2.4.4 Classes finales
- 2.4.5 Classes scellées
- 2.4.6 Conversion de type
- 2.4.7 La classe Object
- 2.5 Interfaces
- 2.5.1 Création d'une interface
- 2.5.2 Utilisation d'une interface
- 2.5.3 Méthode par défaut
- 2.5.4 Méthode statique
- 2.5.5 Interfaces scellées
- 2.6 Classes imbriquées
- 2.6.1 Classes imbriquées statiques
- 2.6.2 Classes internes (d'instance)
- 2.6.3 Classes anonymes
- 2.7 Les records
- 3.1 Présentation
- 3.2 Création d'un package
- 3.3 Utilisation et importation d'un package
- 3.4 Importation des méthodes statiques
- 4.1 Mise en place
- 4.2 Présentation
- 4.3 Le JDK est modulaire
- 4.4 Utilisation des modules
- 4.5 Création d'un nouveau module
- 5.1 Les différents types d'erreurs
- 5.1.1 Les erreurs de syntaxe
- 5.1.2 Les erreurs d'exécution
- 5.1.3 Les erreurs de logique
- 6.1 Présentation
- 6.2 Classes génériques
- 6.2.1 Définition d'une classe générique
- 6.2.2 Utilisation d'une classe générique
- 6.2.3 Les méthodes génériques
- 7.1 Présentation
- 7.2 La classe ArrayList
- 7.3 La classe HashSet
- 7.4 La classe LinkedList
- 7.5 La classe HashMap
- 7.6 Streams et pipelines
- 8.1 Exercice 1
- 8.2 Exercice 2
- 8.3 Exercice 3
- 8.4 Exercice 4
- 9.1 Correction de l'exercice 1
- 9.2 Correction de l'exercice 2
- 9.3 Correction de l'exercice 3
- 9.4 Correction de l'exercice 4
Les expressions lambda
- 1. Introduction
- 2. Fonctionnement
- 2.1 Les interfaces fonctionnelles
- 2.2 Les méthodes anonymes
- 2.2.1 Syntaxe générale
- 2.2.2 Déclaration des paramètres
- 2.2.3 Déclaration du corps
- 2.2.4 Utilisation des variables "externes"
- 2.3 Les références de méthodes
- 2.3.1 Méthode d'instance
- 2.3.2 Méthode de classe
- 2.3.3 Constructeur
- 2.4 L'API java.util.function
- 2.4.1 Présentation de l'API
- 2.4.2 Utilisation
- 3.1 L'API Stream
- 3.2 Théorie
- 3.3 Obtenir un Stream
- 3.3.1 Obtenir un Stream générique
- 3.3.2 Obtenir un Stream de numérique
- 3.4.1 Utiliser un Stream générique
- 3.4.2 Utiliser un Stream numérique
Application graphique
- 1. Introduction
- 1.1 Les bibliothèques graphiques
- 1.1.1 La bibliothèque AWT
- 1.1.2 La bibliothèque Swing
- 1.1 Les bibliothèques graphiques
- 1.2 Constitution de l'interface graphique d'une application
- 2.1 Les fenêtres
- 2.2 Le thread EDT
- 2.3 La gestion des événements
- 2.4 Aspect des composants
- 2.5 Le positionnement des composants
- 2.5.1 FlowLayout
- 2.5.2 BorderLayout
- 2.5.3 GridLayout
- 2.5.4 BoxLayout
- 2.5.5 GridBagLayout
- 2.5.6 Sans gestionnaire de mise en page
- 2.6.1 La classe JComponent
- 2.6.2 Affichage d'informations
- 2.6.3 Les composants d'édition de texte
- 2.6.4 Les composants de déclenchement d'actions
- 2.6.5 Les composants de sélection
- 2.7.1 La boîte de saisie
- 2.7.2 La boîte de message
- 2.7.3 La boîte de confirmation
- 2.8.1 Déléguer les traitements à un thread enfant
- 2.8.2 Mettre à jour l’IHM depuis un thread enfant
- 2.8.3 Utiliser la classe SwingWorker
Accès aux bases de données
- 1. Principe de fonctionnement d'une base de données
- 1.1 Terminologie
- 1.2 Le langage SQL
- 1.2.1 Recherche d'informations
- 1.2.2 Ajout d'informations
- 1.2.3 Mise à jour d'informations
- 1.2.4 Suppression d'informations
- 2.1 Présentation de JDBC
- 2.2 Chargement du pilote
- 2.3 Établir et manipuler la connexion
- 2.3.1 Établir la connexion
- 2.3.2 Manipuler la connexion
- 2.4.1 Exécution d'instructions de base avec le type Statement
- 2.4.2 Exécution d'instructions paramétrées avec l'objet PreparedStatement
- 2.4.3 Exécution de procédures stockées avec l'objet CallableStatement
- 2.5.1 Positionnement dans un ResultSet
- 2.5.2 Lecture des données dans un ResultSet
- 2.5.3 Modification des données dans un ResultSet
- 2.5.4 Suppression de données dans un ResultSet
- 2.5.5 Ajout de données dans un ResultSet
- 2.6.1 Mise en œuvre des transactions
- 2.6.2 Points de sauvegarde
- 2.6.3 Niveaux d'isolement
Déploiement d'applications
- 1. Archive Java
- 1.1 Présentation
- 1.2 Manipulation d'une archive
- 1.2.1 Création d'une application
- 1.2.2 Création d'une archive
- 1.2.3 Visualisation du contenu
- 1.2.4 Extraction
- 1.2.5 Mise à jour
- 1.2.6 Exécution
- 1.3 Le manifest
- 1.3.1 Présentation
- 1.3.2 Création
- 1.4 La gestion des dépendances
- 1.4.1 Dans un sous-répertoire
- 1.4.2 À l'intérieur même de l'archive
- 2.1 La création de l'archive Java
- 2.2 La création du module de l'application
- 2.3 La recherche des dépendances avec jdeps
- 2.4 La création de l'arborescence avec jlink
- 2.5 L'ajout des dépendances non modulaires
- 2.6 Le test de l'application
- 3.1 Création du fichier de configuration
- 3.2 Utilisation du fichier de configuration
- 3.3 Déploiement de l'application
Thierry RICHARD
Après 8 ans en tant qu'ingénieur d'études dans différentes ESN, Thierry RICHARD a été formateur à ENI Ecole pendant 10 ans avant d’occuper le poste de coordinateur technique au sein de la même structure. Il est spécialisé dans les techniques de développement objet en environnement .NET et Java. Son expérience s'allie à ses compétences pédagogiques pour fournir au lecteur un livre réellement opérationnel sur le développement d'applications en Java.
En savoir plus