Vous êtes sur la page 1sur 5

Découpage des applications java en couches

logicielles

I/ Fonctions d’une application

Un utilisateur d’une application informatique voit 3


fonction essentielles de cette application :
- La fonction de gestion des vues ou interfaces
Homme-Machine(IHM) : c’est à travers ces vues
que l’utilisateur interagit avec l’application. Les
vues peuvent être des pages web ou des
applications fenêtrées. C’est à travers des vues en
entrée que l’utilisateur envoie les données et des
vues en sortie que l’utilisateur obtient les
résultats des traitements effectués par
l’application
- La fonction de traitements encore appelée
fonction métier chargée des traitements
- La fonction de stockage chargée du stockage
permanent des informations dans des fichiers ou
des bases de données
II/ Couches logicielles d’une application

Le développeur fait correspondre aux fonctions essentielles


d’une application, des couches logicielles (layers). Le
développeur effectue une division logique de l’application
en couches logicielles pour faciliter sa maintenance
logicielle. En effet, le développeur peut intervenir sur une
couche sans modifier une autre. Les couches logicielles sont
constituées de composants logiciels (classes, pages web,
navigateurs web, SGBD, …)

Les couches logicielles sont mises en place par le


développeur dans l’ordre suivant :
- Couche domaine encore appelée couche des
entités : l’application étant orientée objet , le
développeur y définit les classes d’objets utilisés
dans l’application étant donné que les objets sont
créés à partir de classes. Les composants logiciels
de cette couche sont des classes. La couche
domaine est transversale aux autres couches car
elles ont toutes besoin de la couche domaine.
- Couche d’accès aux données ou DAO ( Data
Access Object) : cette couche est constituée de
composants logiciels qui sont des classes
comportant des méthodes qui effectuent les
opérations CRUD ( Create Read Update Delete)
avec les bases de données.
- La couche métier encore appelée couche service
chargée d’effectuer des calculs et autres
traitements sur les données qui viennent des
bases de données. Les composants logiciels sont
des classes contenant des méthodes qui
effectuent les différents calculs sur les données
qui ont récupérées de la couche dao par la
couche métier.
- La couche de présentation dont les composants
logiciels sont en général des classes graphiques
ou pages web. Elle est chargée de la conception
des vues ou IHM.

Concrètement, on crée un projet pour


l’application dans un IDE (par exemple Eclipse) et
pour chaque couche logicielle, on crée un
package (sous-dossier) dans le dossier src (qui est
le dossier des sources).
Les couches doivent communiquer par un
mécanisme appelé Injection de dépendances (ID).

En effet lorsque qu’une classe A d’une couche


logicielle C1 a besoin d’une classe B d’une couche
logicielle C2, on importe dans le package C1, le
package C2 et ensuite on crée une instance de la
classe B dans la classe A.
La classe A peut alors bénéficier des services de la
classe B par l’appel dans A des méthodes de B.
Les symboles suivants seront utilisés :
C1------------->C2 couche C1 a besoin de C2, donc
C1 <------------C2 couche C2 injectée dans C1
Les ID suivantes doivent être définies entre les
couches
Dao < --------------- domaine
Métier < --------------- domaine
Présentation < --------------- domaine
Métier < --------------- Dao
Présentation < --------------- Métier

Vous aimerez peut-être aussi