Le code est décomposé en couches et chaque couche ne peut communiquer qu'avec celles du dessus ou du dessous. Par exemple : * En 2 couches : * client / serveur * En 3 couches : * client / serveur d'applications / serveur de bases de données, * IHM / serveur d'applications (JSP / JSF) / bean métier. (Proche de [[helloworld:design_pattern:mvc|MVC]]) * En n couches : {{:helloworld:design_pattern:couches:archi_generale.png|Exemple de modèle couche}} [[http://www-igm.univ-mlv.fr/~dr/XPOSE2008/Les%20technologies%20tactiles/compo_logicielle.html|Les technologies tactiles - Couche logicielle]] {{ :helloworld:design_pattern:couches:les_technologies_tactiles_-_couche_logicielle_2020-04-29_10_06_24_pm_.html |Archive du 2009 le 29/04/2020}} [[http://www.oreilly.com/programming/free/files/software-architecture-patterns.pdf|Software Architecture Patterns]], {{ :helloworld:design_pattern:software-architecture-patterns.pdf |Archive}}