Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Développement informatique
  3. Programmation objet
Extrait - Développement informatique Apprenez à concevoir avant de programmer
Extraits du livre
Développement informatique Apprenez à concevoir avant de programmer
3 avis
Revenir à la page d'achat du livre

Programmation objet - Java : présentation

Le langage Java

1. Historique

Java a été développé par Sun Microsystems en 1991.

Il s’agissait de développer un langage de programmation qui permette de contrôler des appareils électroniques. Java se devait donc d’être un langage peu encombrant, performant et facile à porter pour un large éventail d’appareils.

2. Les caractéristiques principales

a. La portabilité

La compilation classique

Quand on compile un programme écrit en C ou dans la plupart des autres langages, le compilateur traduit le fichier source en code machine (des instructions spécifiques au processeur que votre ordinateur utilise). Si vous compilez le code source sur un ordinateur reposant sur un processeur, le programme résultant ne fonctionnera que sur d’autres ordinateurs reposant sur le même processeur.

Pour utiliser le même programme sur une autre plateforme, il faut transférer le code source vers la nouvelle plateforme et le recompiler pour produire du code machine spécifique à ce système.

images/02011a.png

La compilation Java

images/02011b.png

Le compilateur Java génère un pseudocode indépendant de la plate-forme de développement. La machine virtuelle, dépendante du processeur, interprète ce pseudocode.

On remarque que dans ce système, il faut qu’il y ait impérativement une machine virtuelle Java (JVM) pour chacune...

Les objectifs du cours Java - Java EE

1. La programmation objet - Java

a. Les bases de la programmation objet en Java

Maîtriser les bases du langage Java.

Concevoir et développer des applications en utilisant les principes de la programmation objet.

b. La programmation graphique - MVC

Développer des applications graphiques en Swing.

Structurer un programme en respectant le modèle MVC.

c. Les bases de données relationnelles - JDBC

Développer des applications qui accèdent à une base de données relationnelle.

Développer une couche d’accès aux données (Data Access Object).

Développer les classes permettant d’assurer le mapping objet/relationnel.

d. La programmation réseau - Architecture 3-tiers

Concevoir et développer un serveur d’objets sérialisés.

Concevoir et développer un serveur XML.

Développer des applications clientes de ces serveurs.

2. Java EE

a. La programmation web

Concevoir et développer des applications web écrites en Java, en utilisant les servlets et les JSP.

b. Les EJB

Concevoir et développer des applications utilisant les Enterprise Java Beans 3 (objets distants).

Concevoir des architectures 3-tiers et 4-tiers.

Le chapitre Objets distants - RMI - EJB contient un exemple d’accès à des objets distants avec RMI (Java SE).

Les architectures développées

1. 2-tiers client lourd

images/02013a.png

Une application graphique développée en Java communique avec un serveur de bases de données.

2. 3-tiers client lourd

images/02013b.png

Une application graphique développée en Java communique avec un serveur d’application développé en Java. Le client envoie une requête SQL au serveur qui renvoie des objets Java sérialisés.

Le serveur d’application communique avec un serveur de bases de données.

3. 3-tiers client lourd (XML)

images/02013c.png

Une application graphique développée en Java communique avec un serveur d’application développé en Java. Le client envoie une requête SQL au serveur qui renvoie un flux XML.

Le serveur d’application communique avec un serveur de bases de données.

4. 3-tiers client lourd (objets distants)

images/02013d.png

Une application Java communique avec un serveur d’objets distants.

Le serveur d’objets distants communique avec un serveur de bases de données.

5. 3-tiers client léger

images/02013e.png

Une application graphique développée en HTML communique avec le conteneur web d’un serveur Java EE.

Le conteneur web du serveur Java EE communique avec un serveur de bases de données. 

6. 3-tiers client lourd

images/02013f.png

Une application graphique développée en Java communique avec le conteneur d’EJB d’un serveur Java EE.

Le conteneur d’EJB du serveur...

Organisation des dossiers, pour les applications Java et Java EE

  • Le dossier Cours contient les exemples de cours Java Standard Edition.

  • Le dossier CoursJavaEE contient les exemples de cours Java Enterprise Edition.

  • Le dossier TP contient les exemples de travaux pratiques Java Standard Edition.

  • Le dossier TPJavaEE contient les exemples de travaux pratiques Java Enterprise Edition.

  • Le dossier Utilitaires contient deux sous-dossiers :

  • UtilitairesMG contient les programmes utilitaires généraux utilisés dans l’ouvrage. Ces programmes peuvent être utilisés pour toute application Java.

  • UtilitairesDivers contient des programmes utilitaires spécifiques aux applications de l’ouvrage.

UtilitairesMG est le nom du dossier qui contient les classes utilitaires développées par l’auteur, dont les initiales sont MG. Pardon pour cette personnalisation !

images/02014a.png

Cette organisation, utilisée pour l’ouvrage, est indicative.

Les programmes utilitaires : packages UtilitairesMG et UtilitairesDivers

Les dossiers UtilitairesMG et UtilitairesDivers contiennent des packages, regroupant de nombreuses classes utiles aux développements. Ces classes sont présentées ou développées au fur et à mesure des besoins des applications de l’ouvrage.

1. UtilitairesMG : liste des classes utilitaires

Les packages de ce dossier sont utilisables dans n’importe quelle application Java. Ils "complètent" les packages de Java SE et Java EE pour faciliter les développements.

En gras : le nom du package

  • En maigre, sous forme de liste : les classes

Les packages dont le nom commence par utilitairesMG.graphique contiennent des classes qui facilitent les développements graphiques en Swing.

utilitairesMG.graphique

  • EcouteFenetre

  • FlowLayoutMG

  • LF

utilitairesMG. graphique.fenetreinterne

  • DesktopManagerMG

  • JDesktopPaneMG

  • JScrollPaneMG

utilitairesMG. graphique.table

  • AbstractRenduCellule

  • Editeur

  • EditeurBigDecimal

  • EditeurDate

  • EditeurDouble

  • EditeurFloat

  • EditeurInteger

  • EditeurLong

  • EditeurObject

  • LignesComparator

  • ModeleColonneTable

  • ModeleTable

  • RenduBigDecimal

  • RenduBoolean

  • RenduDate

  • RenduDouble

  • RenduFloat

  • RenduInteger

  • RenduLong

  • RenduObject

utilitairesMG. graphique.texte

  • DocumentSaisieLimitee

Le package utilitairesMG.divers contient quelques classes utilitaires diverses.

utilitairesMG. divers

  • Clavier

  • Colonne

  • Conversion

  • CreationObjet

  • DateFr

  • Fichier...