Architecture du plug-in de contrôle de code source
Vous pouvez ajouter la prise en charge du contrôle de code source à l’environnement de développement intégré (IDE) Visual Studio en implémentant et en attachant un module de contrôle de code source. L’IDE se connecte au module de contrôle de code source via l’API du module de contrôle de code source bien définie. L’IDE expose les caractéristiques de contrôle de version du système de contrôle de code source en fournissant une interface utilisateur (IU) qui se compose de barres d’outils et de commandes de menu. Le module de contrôle de code source implémente la fonctionnalité de contrôle de code source.
Ressources du module de contrôle de code source
Le module de contrôle de code source fournit des ressources pour vous aider à créer et connecter votre application de contrôle de version à l’IDE Visual Studio. Le module de contrôle de code source contient la spécification de l’API qui doit être implémentée par un module de contrôle de code source, afin qu’il puisse être intégré à l’IDE Visual Studio. Il contient également un exemple de code (écrit en C++) qui implémente un module de contrôle de code source squelette illustrant l’implémentation des fonctions essentielles conformes à l’API du module de contrôle de code source.
La spécification de l’API du module de contrôle de code source vous permet de tirer parti de n’importe quel système de contrôle de code source de votre choix si vous créez un DLL de contrôle de code source avec l’ensemble requis de fonctions implémentées conformément à l’API du module de contrôle de code source.
Composants
Le package de l’adaptateur de contrôle de code source dans le diagramme est le composant de l’IDE qui traduit la demande de l’utilisateur d’une opération de contrôle de code source dans un appel de fonction pris en charge par le module de contrôle de code source. Pour ce faire, l’IDE et le module de contrôle de code source doivent inclure une boîte de dialogue efficace pour transmettre les informations entre l’IDE et le module. Pour que ce dialogue se produise, ils doivent tous les deux parler le même langage. L’API du module de contrôle de code source décrite dans cette documentation est le vocabulaire courant de cet échange.
Diagramme d’architecture montrant l’interaction entre Visual Studio et le module de contrôle de code source
Comme illustré dans le diagramme d’architecture, l’interpréteur de commandes Visual Studio, étiqueté comme interpréteur de commandes Visual Studio dans le diagramme, héberge les projets de travail de l’utilisateur et les composants associés, tels que les éditeurs et l’Explorateur de solutions. Le package de l’adaptateur de contrôle de code source gère l’interaction entre l’IDE et le module de contrôle de code source. Le package de l’adaptateur de contrôle de code source fournit sa propre interface utilisateur (IU) de contrôle de code source. Il s’agit de l’interface utilisateur (IU) de niveau supérieur avec laquelle l’utilisateur interagit pour lancer et définir l’étendue d’une opération de contrôle de code source.
Le module de contrôle de code source peut avoir sa propre interface utilisateur, qui peut comprendre de deux parties, comme illustré dans la figure. La case intitulée « Interface utilisateur (IU) du fournisseur » représente des éléments d’interface utilisateur personnalisés que vous fournissez en tant que créateur du module de contrôle de code source. Ils sont affichés directement par le module de contrôle de code source lorsque l’utilisateur appelle une opération de contrôle de code source avancée. La zone intitulée « Interface utilisateur (IU) d’assistance » est un ensemble de fonctionnalités d’interface utilisateur (IU) du module de contrôle de code source qui sont indirectement appelées via l’IDE. Le module de contrôle de code source transmet les messages liés à l’interface utilisateur (IU) à l’IDE via des fonctions de rappel spéciales fournies par l’IDE. L’interface utilisateur (IU) d’assistance facilite une intégration plus transparente avec l’IDE (souvent grâce à l’utilisation d’un bouton Avancé) et offre ainsi une expérience utilisateur final plus unifiée.
Un module de contrôle de code source ne peut pas apporter de modifications à l’interpréteur de commandes Visual Studio et, par conséquent, au package de l’adaptateur de contrôle de code source ou à l’interface utilisateur (IU) du contrôle de code source fournie par l’IDE. Elle doit utiliser au maximum la flexibilité offerte par l’implémentation des différentes fonctions d’API du module de contrôle de code source qui contribuent à une expérience intégrée pour l’utilisateur final. La section de référence de la documentation de l’API du module de contrôle de code source contient des informations sur certaines fonctionnalités avancées du module de contrôle de code source. Pour exploiter ces fonctionnalités, le module de contrôle de code source doit déclarer ses fonctionnalités avancées à l’IDE pendant l’initialisation et il doit implémenter des fonctions avancées spécifiques pour chaque fonctionnalité.