Couche architecturale (en développement d'entreprise). Concept, définition, présentation

De nos jours, il est difficile de trouver une dĂ©finition brĂšve et claire de concepts tels que «couche application» et «couche d'abstraction». Cela entraĂźne des diffĂ©rences de comprĂ©hension du mĂȘme ou une mauvaise comprĂ©hension de ce concept parmi les dĂ©veloppeurs. Et les malentendus mĂšnent Ă  des dĂ©saccords.



Le but de cet article est de travailler ensemble pour créer la certitude, créer une vision commune pour tous et proposer une définition courte, claire et pratique de la couche architecturale dans le domaine des applications d'entreprise. Vous pouvez discuter et compléter tout ce qui est donné dans l'article dans les commentaires, et je mets à jour le contenu de l'article conformément aux commentaires.



La division de l'architecture d'une application d'entreprise en couches permet
  • - , ,
  • ,
  • , ,


, .





Quelle est la confusion actuelle en ce qui concerne l'architecture en couches:
  • , 3: , -, —
  • , , , , ,
  • (layer), (tier), . , ,


« » « » « ».





Une couche architecturale (d'une application d'entreprise) est un ensemble spĂ©cifique (limitĂ© par le but, fermĂ©) de ressources (outils pour travailler avec des ressources, des piĂšces, des composants), Ă  l'aide duquel un ensemble (limitĂ© par des critĂšres) de tĂąches appliquĂ©es caractĂ©ristiques de cette couche est implĂ©mentĂ©. La couche supĂ©rieure implĂ©mente ses composants (ressources), en fonction des ressources de la couche infĂ©rieure. Les ressources d'une couche donnĂ©e sont compatibles les unes avec les autres et ne sont utilisĂ©es que dans cette couche (idĂ©alement). La couche parent peut crĂ©er ses propres ressources en utilisant les ressources de plusieurs couches. Il peut se rapporter Ă  un systĂšme abstrait et idĂ©alisĂ© qui existe sous la forme de schĂ©mas, ou est plus liĂ© Ă  la mise en Ɠuvre - cela dĂ©termine les composants de la couche.



Composants de la couche:



  • si la couche est liĂ©e Ă  l'implĂ©mentation: classes, objets, contexte, services, contrĂŽleurs, proxies, assemblages ...
  • si la couche concerne l'abstraction: modĂšles de donnĂ©es (idĂ©alisĂ©s), actions ...


Quelle est la couche architecturale caractérisée par:



  • le but appliquĂ©, spĂ©cifique, logique, dĂ©finit une variĂ©tĂ© de tĂąches qui peuvent ĂȘtre attribuĂ©es Ă  une certaine couche
  • un certain ensemble de tĂąches implĂ©mentĂ©es sur une couche donnĂ©e
  • ressources et outils avec lesquels les tĂąches sont mises en Ɠuvre: donnĂ©es, objets et actions pouvant ĂȘtre effectuĂ©es sur des donnĂ©es et des objets
  • les donnĂ©es et la logique d'une certaine couche sont cohĂ©rentes en elles-mĂȘmes
  • la cohĂ©rence dĂ©termine la prĂ©visibilitĂ© et la prĂ©dĂ©termination de l'interaction des ressources d'une certaine couche, en d'autres termes, les dĂ©tails dont la couche est formĂ©e sont compatibles les uns avec les autres
  • une couche sĂ©parĂ©e peut ĂȘtre perçue comme un tout unique et autosuffisant
  • la dĂ©pendance entre les couches peut ĂȘtre minimisĂ©e
  • le calque crĂ©Ă© peut servir de base Ă  plusieurs calques parents diffĂ©rents
  • lors du passage d'une couche Ă  une autre, les entitĂ©s modĂ©lisĂ©es sont gĂ©nĂ©ralement transformĂ©es d'une reprĂ©sentation Ă  une autre


En bref sur l'ordre de conception des couches architecturales:



  1. Toutes les exigences commerciales sont mises en évidence et structurées en catégories.
  2. Les exigences sont décomposées en tùches à résoudre par l'application.
  3. Les tùches sont catégorisées et regroupées en fonction de la similitude de leur objet.
  4. Sur la base de ces catégories, l'objectif général de la couche architecturale est mis en évidence, dans lequel les tùches seront résolues.
  5. La rĂ©solution de problĂšmes peut ĂȘtre considĂ©rĂ©e comme un algorithme, ou un processus, qui fournit le rĂ©sultat souhaitĂ©. De toutes les tĂąches, on distingue les composants communs (dĂ©tails), Ă  partir desquels ils sont mis en Ɠuvre. (modĂšles et actions sur eux). Il y aura un article supplĂ©mentaire sur la façon dont cela est fait.
  6. En fonction des composants sélectionnés, les classes de la couche correspondante sont implémentées et, en rÚgle générale, combinées en un seul assemblage séparé.




Exemples de
1.



ISO/OSI



2.



,



  • : , ,
  • (, , )


image



3.







1 — , , , ,

2 — , — , 


3 — , , — : , ,



() , (, , ) (, ).



, . 3 (, , ), . , , , .




All Articles