Développons en Java
v 2.40   Copyright (C) 1999-2023 .   
Développons en Java Partie 1 : Les bases du langage Java Imprimer Index Index avec sommaire Télécharger le PDF

 

Préambule

 

A propos de ce document

L'idée de départ de ce document était de prendre des notes relatives à mes premiers essais avec Java en 1996. Ces notes ont tellement grossi que j'ai décidé de les formaliser un peu plus et de les diffuser sur Internet d'abord sous la forme d'articles puis rassemblées pour former le présent ouvrage.

Aujourd'hui, celui-ci est composé de 20 grandes parties :

  1. Les bases du langage Java
  2. Les API de base
  3. Les API avancées
  4. Le système de modules
  5. La programmation parallèle et concurrente
  6. Le développement des interfaces graphiques
  7. L'utilisation de documents XML et JSON
  8. L'accès aux bases de données
  9. La machine virtuelle Java (JVM)
  10. Le développement d'applications d'entreprises
  11. Le développement d'applications web
  12. Le développement d'applications RIA / RDA
  13. Le développement d'applications avec Spring
  14. Les outils pour le développement
  15. La conception et le développement des applications
  16. Les tests automatisés
  17. Les outils de profiling et monitoring
  18. Java et le monde informatique
  19. Le développement d'applications mobiles
  20. Annexes

Chacune de ces parties est composée de plusieurs chapitres dont voici la liste complète :

Je souhaiterais l'enrichir pour qu'il couvre un maximum de sujets autour du développement avec les technologies relatives à Java. Ce souhait est ambitieux car les API de Java et open source sont très riches et ne cessent de s'enrichir au fil des versions et des années.

Dans chaque chapitre, les classes et les membres des classes décrits ne le sont que partiellement : le but n'est pas de remplacer la documentation d'une API mais de faciliter ses premières mises en oeuvre. Ainsi pour une description complète de chaque classe, il faut consulter la documentation fournie par Sun/Oracle au format HTML pour les API du JDK et la documentation fournie par les fournisseurs respectifs des API tiers.

Je suis ouvert à toutes réactions ou suggestions concernant ce document notamment  le signalement des erreurs, les points à éclaircir, les sujets à ajouter, etc. ... N'hésitez pas à me contacter : jean-michel.doudoux@wanadoo.fr

La dernière version publiée de ce document est disponible aux formats HTML et PDF sur mon site personnel :
https://www.jmdoudoux.fr/java/

Il est aussi disponible en mirroir sur le site developpez.com à l'url :
https://jmdoudoux.developpez.com/cours/developpons/java/

Ce manuel est fourni en l'état, sans aucune garantie. L'auteur ne peut être tenu pour responsable des éventuels dommages causés par l'utilisation des informations fournies dans ce document.

La version PDF de ce document est réalisée grâce à l'outil freeware HTMLDOC version 1.9.17.

La version sur mon site perso utilise deux outils open source :

 

Remerciements

Je souhaite remercier les personnes qui m'ont apporté leur soutien au travers de courriers électroniques de remerciements, de félicitations ou d'encouragements.

Je tiens aussi particulièrement à exprimer ma gratitude aux personnes qui m'ont fait part de correctifs ou d'idées d'évolutions : ainsi pour leurs actions, je veux particulièrement remercier Vincent Brabant, Thierry Durand, David Riou et surtout François Vancata.

 

Notes de licence

Copyright (C) 1999-2023 Jean-Michel DOUDOUX

Vous pouvez copier, redistribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU, Version 1.1 ou toute autre version ultérieure publiée par la Free Software Foundation; les Sections Invariantes étant constituées du chapitre Préambule, aucun Texte de Première de Couverture, et aucun Texte de Quatrième de Couverture. Une copie de la licence est incluse dans la section GNU Free Documentation Licence de ce document.

La version utilisée de cette licence est disponible à l'adresse : hhttps://www.gnu.org/licenses/old-licenses/fdl-1.1.html.

 

Marques déposées

Sun, Sun Microsystems, le logo Sun et Java sont des marques déposées de Sun Microsystems Inc jusqu'en décembre 2009 puis d'Oracle à partir de janvier 2010.

Les autres marques et les noms de produits cités dans ce document sont la propriété de leur éditeur respectif.

 

Historique des versions

Version Date Evolutions

0.10

15/01/2001

brouillon : 1ere version diffusée sur le web.

0.20

11/03/2001

ajout des chapitres JSP et sérialisation, des informations sur le JDK et son installation, corrections diverses.

0.30

10/05/2001

ajout des chapitres flux, beans et outils du JDK, corrections diverses.

0.40

10/11/2001

réorganisation des chapitres et remise en page du document au format HTML (1 page par chapitre) pour faciliter la maintenance

ajout des chapitres : collections, XML, JMS, début des chapitres Swing et EJB

séparation du chapitre AWT en trois chapitres.

0.50

31/04/2002

séparation du document en trois parties

ajout des chapitres : logging, JNDI, Java mail, services web, outils du JDK, outils lires et commerciaux, Java et UML, motifs de conception

compléments ajoutés aux chapitres : JDBC, Javadoc, interaction avec le réseau, Java et XML, bibliothèques de classes

0.60

23/12/2002

ajout des chapitres : JSTL, JDO, Ant, les frameworks

ajout des sections : Java et MySQL, les classes internes, les expressions régulières, dom4j

compléments ajoutés aux chapitres : JNDI, design patterns, J2EE, EJB

0.65

05/04/2003

ajout d'un index sous la forme d'un arbre hiérarchique affiché dans un frame de la version HTML

ajout des sections : DOM, JAXB, bibliothèques de tags personnalisés, package .war

compléments ajoutés aux chapitres : EJB, réseau, services web

0.70

05/07/2003

ajout de la partie sur le développement d'applications mobiles contenant les chapitres : J2ME, CLDC, MIDP, CDC, Personal Profile, les autres technologies

ajout des chapitres : le multitâche, les frameworks de tests, la sécurité, les frameworks pour les app web

compléments ajoutés aux chapitres : JDBC, JSP, servlets, interaction avec le réseau

application d'une feuille de styles CSS pour la version HTML

corrections et ajouts divers (652 pages)

0.75

21/03/2004

ajout des chapitres : le développement d'interfaces avec SWT, Java Web Start, JNI

compléments ajoutés aux chapitres : GCJ, JDO,

nombreuses corrections et ajouts divers notamment dans les premiers chapitres (737 pages)

0.80

0.80.1

0.80.2

29/06/2004

15/10/2004

02/11/2004

ajout des chapitres : le JDK 1.5, des bibliothèques open source, des outils open source, Maven et d'autres solutions de mapping objet-relationnel

ajout des sections : Installation J2SE 1.4.2 sous Windows, J2EE 1.4 SDK, J2ME WTK 2.1

compléments ajoutés aux chapitres : Ant, JDBC, Swing, Java et UML, MIDP, J2ME, JSP, JDO

nombreuses corrections et ajouts divers (831 pages)

0.85

27/11/2005

ajout du chapitre : Java Server Faces

ajout des sections : Java updates, le composant JTree

nombreuses corrections et ajouts divers (922 pages)

0.90

11/09/2006

ajout des chapitres : Ajax, Frameworks, Struts

compléments ajoutés aux chapitres : Javadoc, JNDI, Design pattern (façade, fabrique, fabrique abstraite), JFace

nombreuses corrections et ajouts divers (1092 pages)

0.95

0.95.1

0.95.2

18/11/2007

12/06/2008

01/11/2008

ajout des parties : utilisation de documents XML, l'Accès aux bases de données, développement d'applications web, concevoir et développer des applications

ajout des chapitres : Scripting, persistance des objets, StAX, JPA, Tomcat

compléments ajoutés aux chapitres : Java SE 6, JAXB 2.0, Java DB, Java EE 5, JMS 1.1, OpenJMS, les menus avec Swing, le design pattern décorateur, Rowset

nombreuses corrections et ajouts divers (1305 pages)

1.00

16/03/2009

ajout des parties : la JVM et le développement d'applications RIA/RDA

ajout des chapitres : annotations, décompilation et obfuscation, génération de documents, GWT, JVM, la gestion de la mémoire, la communauté Java, les applications RIA/RDA

réécriture complète des chapitres : les modèles de documents (JDOM), les techniques de bases, Logging (log4j), JUnit

compléments ajoutés aux chapitres : la gestion des exceptions, JDBC (performances), les fonctions mathématiques (BigDecimal), JDBC 3.0, les framework de tests, Apache POI, iText

nombreuses corrections et ajouts divers (1672 pages)

1.10

04/08/2009

ajout des chapitres : JMX, EJB 3 et l'encodage des caractères

compléments ajoutés aux chapitres : J2ME /Java ME

corrections et ajouts divers (1820 pages)

1.20

29/10/2009

ajout du chapitre : les objets de type mock

ajout de la section : Java 6 Update

compléments ajoutés aux chapitres : les frameworks de tests, JUnit, GWT et RIA

nombreuses corrections et ajouts divers (1888 pages)

1.30

27/03/2010

ajout des chapitres : la validation de données, EJB 3.1

ajout de la section : Java EE 6

réécriture du chapitre : les services web de type Soap

nombreuses corrections et ajouts divers (2035 pages)

1.40

08/08/2010

ajout du chapitre : Terracotta

ajout de la section : Hibernate (les relations 1/1)

réécriture de la section : les énumérations

nombreuses corrections et ajouts divers (2105 pages)

1.50

30/12/2010

ajout des chapitres : l'utilisation des dates, les plate-formes Java et .Net et Java et C#

ajout de la section : l'API Criteria d'Hibernate

réécriture de la section : le design pattern Singleton

nombreuses corrections et ajouts divers (2198 pages)

1.60

11/09/2011

ajout de la partie : le développement d'applications avec Spring

ajout des chapitres : Spring, Spring Core, la gestion des transactions avec Spring, Spring et JMS

ajout de la section : Hibernate HQL, Service Provider Interface

nombreuses corrections et ajouts divers (2330 pages)

1.70

05/03/2012

ajout des chapitres : Java 7 le projet Coin, les techniques de développement spécifiques à Java, la mise en oeuvre de l'AOP avec Spring

mise à jour du chapitre : RMI

compléments ajoutés relatifs à Java 7

très nombreuses corrections et ajouts divers (2402 pages, 100 chapitres)

1.80

14/10/2012

ajout du chapitre : NIO 2

ajout des sections : les caches d'Hibernate, JRadioButton

mise à jour de la section : la création dynamique d'objets

nombreuses corrections et ajouts divers (2507 pages, 101 chapitres)

1.90

25/02/2013

ajout du chapitre : Spring et JMX

mise à jour du chapitre : Logging

ajout des sections : Joda Time, VisualVM et JVM 32/64 bits

très nombreuses corrections et ajouts divers (2599 pages, 102 chapitres)

2.00

19/05/2014

La version du quinzième anniversaire

ajout des chapitres : JSON, Json-P, Gson, Websockets, l'API Websocket, JCA, JCE, AOP, Apache Commons

réécriture des chapitres : les collections, la sérialisation

ajout des sections : logging (NDC/MDC), parcours du DOM, ActiveMQBrowser, Maven 2, Java SE 8

très nombreuses corrections et ajouts divers (3004 pages, 111 chapitres)

2.10

19/03/2016

ajout du chapitre : la planification de tâches, les expressions lambdas, les threads, l'association de données à des threads, le framework executor, la gestion de la concurrence

ajout des sections : l'invocation dynamique d'une méthode, l'API Reflection et le SecurityManager, l'utilisation de l'API Reflection sur les annotations, le clonage d'un objet, l'API Date-Time, le mapping de l'héritage de classes (ORM, JPA, Hibernate), les méthodes par défaut, l'héritage de méthodes statiques, les outils de génération de code Hibernate

Corrections et ajouts divers (3413 pages, 117 chapitres)

2.20

06/01/2019

ajout des chapitres : JUnit 5, JSON-B, l'API Stream

Corrections et ajouts divers (3623 pages, 120 chapitres)

2.30

15/06/2022

ajout des chapitres : JShell, l'API Service Loader, Arthas, les records, le système de module, les modules

réécriture des chapitres : les chaines de caractères, les génériques

très nombreuses corrections et ajouts divers (4001 pages, 128 chapitres)

2.40

20/12/2023

ajout des chapitres : les expressions régulières, la JVM Hotspot dans un conteneur Docker

ajout des sections : les types scellés, la déclaration de variables locales avec l'inférence de type, les évolutions de l'instruction switch dans Java 14, les warnings du compilateur (lossy-conversions, missing-explicit-ctor, strictfp, synchronization, text-blocks), la version du bytecode, la gestion des évolutions des JEPs, l'utilisation de fonctionnalités non standards, les builds early access, la précision des calculs en virgule flottante

réécriture des sections : les structures de controles, les mot réservés

Complément dans le chapitre : JDBC

migration vers HTMLDOC v 1.9.17

très nombreuses corrections et ajouts divers (4207 pages, 130 chapitres)

 


Développons en Java Partie 1 : Les bases du langage Java Imprimer Index Index avec sommaire Télécharger le PDF    
Développons en Java
v 2.40   Copyright (C) 1999-2023 .