La catégorie Modèles structurels contient des modèles illustrant les divers types d'élément structurel, y compris les anti-modèles structurels.
Modèle | Rôle |
---|---|
Dépendance cyclique des composants | Une dépendance cyclique des composants est un anti-modèle structurel dont les composants sont interdépendants. Une dépendance cyclique entre composants est considérée comme étant une grave erreur architecturale. Une telle dépendance rend le code difficile à comprendre et à gérer. Plus important encore, les dépendances cycliques affectent les possibilités de test, le développement parallèle et la réutilisation du code. Les logiciels à grande échelle comportant de nombreuses dépendances cycliques sont fragiles et instables. |
Global Breakable de composant | Un Global Breakable de composant est un anti-modèle structurel pour un composant système souvent affecté lors de la modification d'un autre composant. Excepté pour les implémentations concrètes de niveau supérieur, les Global Breakables ne sont pas recommandés car ils sont synonymes de fragilité et de manque de modularité dans le système. |
Global Butterfly de composant | Un Global Butterfly de composant est un modèle structurel pour un objet comportant de nombreux dépendants globaux. Les modifications apportées à un global butterfly ont souvent des répercussions importantes sur le reste du système. Pour cette raison, un global butterfly ne doit correspondre qu'à une interface système de base ou à une classe d'utilitaire. |
Global Hub de composant | Un Global Hub de composant est un anti-modèle structurel pour un composant comportant de nombreuses dépendances globales et de nombreux dépendants globaux. Un Global Hub est souvent affecté par la moindre modification et il affecte un pourcentage important du système lorsqu'il est lui-même modifié. Les Global hubs ne sont pas recommandés car ils sont synonymes de fragilité et de manque de modularité dans le système. |
Local Breakable de composant | Un Local Breakable de composant est un anti-modèle structurel pour un composant comportant de nombreuses dépendances immédiates. Ce type de composant a une responsabilité excessive dans le bon fonctionnement du code et est généralement identifié par de nombreuses méthodes longues. Les Breakables rendent le code difficile à comprendre, à gérer et à réutiliser. |
Local Butterfly de composant | Un Local Butterfly de composant est un modèle structurel pour un composant comportant de nombreux dépendants immédiats. Les modifications apportées à un local butterfly ont souvent des répercussions immédiates et importantes sur le reste du système. Pour cette raison, un local butterfly ne doit correspondre qu'à une interface système de base ou à une classe d'utilitaire. |
Local Hub de composant | Un Local Hub de composant est un anti-modèle structurel pour un composant comportant de nombreuses dépendances immédiates et de nombreux dépendants immédiats. Ce type de composant a une responsabilité excessive dans le bon fonctionnement du code et sert également d'utilitaire ou de composant couramment utilisé. Les Hubs rendent le code difficile à comprendre, à gérer et à réutiliser. En outre, ils fragilisent le code et le rendent instable. |
Dépendance cyclique des packages | Une dépendance cyclique des packages est un anti-modèle structurel dont les packages sont interdépendants. Une dépendance cyclique entre packages est considérée comme étant une grave erreur architecturale. Une telle dépendance rend le code difficile à comprendre et à gérer. Plus important encore, les dépendances cycliques affectent les possibilités de test, le développement parallèle et la réutilisation du code. Les logiciels à grande échelle comportant de nombreuses dépendances cycliques sont fragiles et instables. |
Global Breakable de package | Un Global Breakable de package est un anti-modèle structurel pour un package comportant de nombreuses dépendances globales. Ce type de package a une responsabilité excessive dans le bon fonctionnement du code. Il contient généralement un certain nombre de composants avec de nombreuses dépendances globales. |
Global Butterfly de package | Un Global Butterfly de package est un modèle structurel pour un package comportant de nombreux dépendants globaux. Les modifications apportées à un global butterfly ont souvent des répercussions importantes sur le reste du système. Pour cette raison, un package de global butterfly ne doit comprendre que des interfaces système de base ou des classes d'utilitaire. |
Global Hub de package | Un Global Hub de package est un anti-modèle structurel pour un package comportant de nombreuses dépendances immédiates. Ce type de package a une responsabilité globalement excessive dans le bon fonctionnement du code et sert également d'utilitaire ou de package couramment utilisé. Il contient généralement de nombreux composants possédant plusieurs dépendances et dépendants globaux. Les Global Hubs de package empêchent de réutiliser les modules et rendent le code difficile à comprendre et à gérer. |
Local Breakable de package | Un Local Breakable de package est un anti-modèle structurel pour un package comportant de nombreuses dépendances immédiates. Ce type de package a une responsabilité excessive dans le bon fonctionnement du code. Il contient généralement un grand nombre de composants ou un certain nombre de composants avec de nombreuses dépendances immédiates. Un Local Breakable de package rend le code difficile à comprendre, à gérer et à réutiliser. |
Local Butterfly de package | Un Local Butterfly de package est un modèle structurel pour un package comportant de nombreux dépendants immédiats. Ce type de package sert d'utilitaire ou de package couramment utilisé. |
Local Hub de package | Un Local Hub de package est un anti-modèle structurel pour un package comportant de nombreuses dépendances immédiates et de nombreux dépendants immédiats. Ce type de package a une responsabilité excessive dans le bon fonctionnement du code et sert également d'utilitaire ou de package couramment utilisé. Il contient généralement de nombreux composants pouvant posséder de nombreuses dépendances immédiates. Les Hubs rendent le code difficile à comprendre, à gérer et à réutiliser. En outre, ils fragilisent le code et le rendent instable. |