Salta el contingut

Arquitectura per capes

La implementació de l'aplicació ha de seguir una arquitectura per capes, que permeta separar les diferents responsabilitats de l'aplicació i facilite la seua evolució i manteniment.

Les capes que s'han de definir són les següents:

  • Presentació: Conté la interfície d'usuari de l'aplicació, que pot ser una aplicació web, una aplicació mòbil, etc. Aquesta capa és la que interactua amb l'usuari final.

  • Controladors: Conté la lògica que s'encarrega de gestionar les peticions de l'usuari i de retornar les respostes adequades.

  • Domini: Conté la lògica de negoci de l'aplicació, que s'encarrega de coordinar les diferents operacions que s'han de realitzar.

    Aquesta capa conté:

    • Entitats: Classes que representen els objectes de negoci de l'aplicació.
    • Serveis: Classes que contenen la lògica de negoci de l'aplicació.
  • Persistència: Conté la lògica per gestionar l'accés a les dades de l'aplicació.

    • Repositoris: Classes que s'encarreguen de gestionar l'accés a les dades de l'aplicació.
    • DAOs: Classes que s'encarreguen de realitzar les consultes a la base de dades.
    • RowMappers: Classes que s'encarreguen de mapar les files de la base a entitats de domini.
graph TD
    classDef app fill:#ffd,stroke:#aa3,stroke-width:1px;
    presentacio["__Presentació__"]
    controladors["__Controladors__"]:::app
    domini["__Domini__
    _Entitats i Serveis_"]:::app
    persistencia["__Persistència__
    _Repositoris, DAOs i RowMappers_"]:::app
    base_dades[("__Base de dades__")]
    presentacio --> controladors
    controladors --> domini
    domini --> persistencia
    persistencia --> base_dades

Figura 1. Arquitectura per capes de l'aplicació.