Diagrammes de dépendance : référenceDependency Diagrams: Reference

Dans Visual Studio, vous pouvez utiliser un diagramme de dépendances pour visualiser l’architecture de haut niveau, la logique de votre système.In Visual Studio, you can use a dependency diagram to visualize the high-level, logical architecture of your system. Un diagramme de dépendances organise les artefacts physiques dans votre système en groupes logiques et abstraits appelés couches.A dependency diagram organizes the physical artifacts in your system into logical, abstract groups called layers. Ces couches décrivent les tâches principales que les artefacts exécutent ou les principaux composants de votre système.These layers describe major tasks that the artifacts perform or the major components of your system. Chaque couche peut également contenir des couches imbriquées qui décrivent des tâches plus détaillées.Each layer can also contain nested layers that describe more detailed tasks.

Pour connaître les versions de Visual Studio qui prennent en charge cette fonctionnalité, consultez Prise en charge des versions pour les outils d'architecture et de modélisation.To see which versions of Visual Studio support this feature, see Version support for architecture and modeling tools.

Vous pouvez spécifier les dépendances prévues ou existantes entre des couches.You can specify the intended or existing dependencies between layers. Ces dépendances, représentées comme des flèches, indiquent quelles couches peuvent utiliser ou actuellement utiliser la fonctionnalité représentée par d'autres couches.These dependencies, which are represented as arrows, indicate which layers can use or currently use the functionality represented by other layers. En organisant votre système en couches qui décrivent les fonctions et les rôles distincts, un diagramme de dépendances peut aider à rendre plus facile à comprendre, réutiliser et gérer votre code.By organizing your system into layers that describe distinct roles and functions, a dependency diagram can help make it easier for you to understand, reuse, and maintain your code.

Utilisez un diagramme de dépendances pour vous aider à effectuer les tâches suivantes :Use a dependency diagram to help you perform the following tasks:

  • communiquer l'architecture logique existante ou prévue de votre système ;Communicate the existing or intended logical architecture of your system.

  • découvrir des conflits entre votre code existant et l'architecture prévue ;Discover conflicts between your existing code and the intended architecture.

  • visualiser l'impact de modifications sur l'architecture prévue quand vous refactorisez, mettez à jour ou faites évoluer votre système ;Visualize the impact of changes on the intended architecture when you refactor, update, or evolve your system.

  • renforcer l'architecture prévue pendant le développement et la maintenance de votre code en incluant la validation avec vos opérations de build et d'archivage.Reinforce the intended architecture during the development and maintenance of your code by including validation with your check-in and build operations.

Cette rubrique décrit les éléments que vous pouvez utiliser sur un diagramme de dépendances.This topic describes the elements that you can use on a dependency diagram. Pour plus d’informations sur la création et dessiner des diagrammes de dépendance, consultez des diagrammes de dépendance : instructions.For more detailed information about how to create and draw dependency diagrams, see Dependency Diagrams: Guidelines. Pour plus d’informations sur les modèles en couches, visitez le site Patterns & Practices.For more information about layering patterns, visit the Patterns & Practices site.

Lecture des diagrammes de dépendanceReading dependency diagrams

Éléments des diagrammes de dépendance

Le tableau suivant décrit les éléments que vous pouvez utiliser sur un diagramme de dépendances.The following table describes the elements that you can use on a dependency diagram.

FormeShape ÉlémentElement DescriptionDescription
11 CoucheLayer Groupe logique d'artefacts physiques dans votre système.A logical group of physical artifacts in your system. Ces artefacts peuvent correspondre à des espaces de noms, des projets, des classes, des méthodes, etc.These artifacts can be namespaces, projects, classes, methods, and so on.

Pour voir les artefacts qui sont liés à une couche, ouvrez le menu contextuel de la couche, puis choisissez afficher les liens pour ouvrir Explorateur de couches.To see the artifacts that are linked to a layer, open the shortcut menu for the layer, and then choose View Links to open Layer Explorer.

Pour plus d’informations, consultez Explorateur de couches.For more information, see Layer Explorer.

- Il est interdit de dépendances de Namespace -Spécifie que les artefacts associés à cette couche ne peuvent pas dépendre d’espaces de noms spécifiés.- Forbidden Namespace Dependencies - Specifies that artifacts associated with this layer cannot depend on the specified namespaces.
- Il est interdit d’espaces de noms -Spécifie que les artefacts associés à cette couche ne doivent pas appartenir aux espaces de noms spécifiés.- Forbidden Namespaces - Specifies that artifacts associated with this layer must not belong to the specified namespaces.
- Requis des espaces de noms -Spécifie que les artefacts associés à cette couche doivent appartenir à un des espaces de noms spécifiés.- Required Namespaces - Specifies that artifacts associated with this layer must belong to one of the specified namespaces.
22 DépendanceDependency Indique qu'une couche peut utiliser les fonctionnalités d'une autre couche, mais pas l'inverse.Indicates that one layer can use the functionality in another layer, but not vice versa.

- Direction -spécifie la direction de la dépendance.- Direction - Specifies the direction of the dependency.
33 Dépendance bidirectionnelleBidirectional Dependency Indique qu'une couche peut utiliser les fonctionnalités d'une autre couche, et vice versa.Indicates that one layer can use the functionality in another layer, and vice versa.

- Direction -spécifie la direction de la dépendance.- Direction - Specifies the direction of the dependency.
44 CommentaireComment Permet d'ajouter des remarques générales au diagramme ou aux éléments du diagramme.Use to add general notes to the diagram or elements on the diagram.
55 Lien de commentaireComment Link Permet de lier des commentaires aux éléments du diagramme.Use to link comments to elements on the diagram.

Explorateur de couchesLayer Explorer

Vous pouvez lier chaque couche aux artefacts de votre solution, tels que des projets, des classes, des espaces de noms, des fichiers projet et d'autres parties de votre logiciel.You can link each layer to artifacts in your solution, such as projects, classes, namespaces, project files, and other parts of your software. Le nombre indiqué sur une couche représente le nombre d'artefacts liés à cette couche.The number on a layer shows the number of artifacts that are linked to the layer. Toutefois, quand vous lisez le nombre d'artefacts sur une couche, tenez compte des points suivants :However, when reading the number of artifacts on a layer, remember the following:

  • Si une couche est liée à un artefact contenant d'autres artefacts, mais n'est pas directement liée à ces autres artefacts, le nombre représentera uniquement les artefacts auxquels elle est directement liée.If a layer links to an artifact that contains other artifacts, but the layer does not link directly to the other artifacts, then the number includes only the linked artifact. Toutefois, les autres artefacts sont inclus dans l'analyse pendant la validation de couche.However, the other artifacts are included for analysis during layer validation.

    Par exemple, si une couche est liée à un espace de noms unique, le nombre d'artefacts liés est égal à 1, même si l'espace de noms contient des classes.For example, if a layer is linked to a single namespace, then the number of linked artifacts is 1, even if the namespace contains classes. Si la couche a également des liens vers chaque classe de l'espace de noms, le nombre comprendra les classes liées.If the layer also has links to each class in the namespace, then the number will include the linked classes.

  • Si une couche contient d'autres couches liées à des artefacts, la couche du conteneur est également liée à ces artefacts, même si le nombre indiqué sur la couche du conteneur ne comprend pas ces artefacts.If a layer contains other layers that are linked to artifacts, then the container layer is also linked to those artifacts, even though the number on the container layer does not include those artifacts.

Pour plus d'informations sur la liaison des couches et des artefacts, consultez :For more information about linking layers and artifacts, see:

Pour examiner les artefacts liésTo examine the linked artifacts

  • Dans le diagramme de la dépendance, ouvrez le menu contextuel pour une ou plusieurs couches, puis choisissez afficher les liens.On the dependency diagram, open the shortcut menu for one or more layers, and then choose View Links.

    Explorateur de couches s’ouvre et affiche les artefacts liés aux couches sélectionnées.Layer Explorer opens and shows the artifacts that are linked to the selected layers. Explorateur de couches a une colonne qui affiche chacune des propriétés des liens d’artefact.Layer Explorer has a column that shows each of the properties of the artifact links.

    Note

    Si vous ne voyez pas toutes ces propriétés, développez le Explorateur de couches fenêtre.If you cannot see all of these properties, expand the Layer Explorer window.

    Colonne dans l’Explorateur de couchesColumn in Layer Explorer DescriptionDescription
    CatégoriesCategories Genre d'artefact, tel qu'une classe, un espace de noms, un fichier source, etc.The kind of artifact, such as a class, namespace, source file, and so on
    CoucheLayer Couche liée à l'artefact.The layer that links to the artifact
    Prend en charge la ValidationSupports Validation Si True, puis le processus de validation de couche peut vérifier que le projet est conforme aux dépendances vers ou à partir de cet élément.If True, then the layer validation process can verify that the project conforms to dependencies to or from this element.

    Si False, puis le lien ne participe pas le processus de validation de couche.If False, then the link does not participate in the layer validation process.

    Pour plus d’informations, consultez des diagrammes de dépendance : instructions.For more information, see Dependency Diagrams: Guidelines.
    IdentificateurIdentifier Référence à l'artefact lié.The reference to the linked artifact

Voir aussiSee Also