Génération du code
Votre équipe peut répondre très rapidement et de manière fiable aux modifications des spécifications utilisateur en générant le code à partir de vos modèles. Si votre équipe développe une ligne de produits semblable ou s'appuie sur les modèles fréquemment utilisés, la génération de code est particulièrement efficace.
Votre équipe peut générer un code de programme, des schémas, des documents, des ressources et d'autres artefacts de tout genre. Votre équipe peut créer des modèles de texte qui interrogent le modèle à l'aide de l'API UML langage (Unified Modeling Language). Pour plus d'informations, consultez Comment : générer des fichiers à partir d'un modèle UML.
Dans la plupart des cas, votre équipe ne génèrera pas tout le code à partir des modèles. À l'aide de techniques comme les classes partielles, votre équipe peut conserver le code généré séparé du code écrit manuellement. Ne modifiez pas le code généré. Mettez à jour de préférence le modèle qui à son tour mettra à jour le code.
La génération de code est utile dans les situations suivantes :
Gammes de produits. Fabrikam, Inc. construit et installe des systèmes de manutention de bagages d'aéroport. La plus grande partie du logiciel est très similaire d'une installation à une autre, mais la configuration du logiciel dépend des machines de manutention des bagages installées et de la manière dont ces éléments sont reliés par des tapis roulants. Lors du démarrage d'un nouveau contrat, l'équipe de Fabrikam discute des spécifications avec la direction de l'aéroport et capture le plan du tapis roulant à l'aide d'un diagramme d'activités UML. À partir de ce modèle, l'équipe génère des fichiers de configuration, un code de programme et des guides d'utilisateur. Elle termine sa tâche en effectuant des ajouts et des réglages manuels dans le code. Au fur et à mesure qu'ils acquièrent de l'expérience, tâche après tâche, les analystes étendent la portée des matériaux générés.
Motifs. Les développeurs de Contoso, Ltd génèrent souvent des sites Web. Ils conçoivent le schéma de navigation à l'aide de diagrammes de classes UML, en ayant recours aux classes et associations pour représenter les pages Web et les liens de navigation. Dans sa majorité, le code du site Web peut être généré. Chaque page Web correspond à plusieurs classes et entrées de fichier de ressources qui sont conformes à un modèle uniforme. Le résultat est plus fiable et flexible qu'avec le code écrit manuellement.
Schémas. Humongous Insurance possède des milliers de systèmes dans le monde. Ces systèmes utilisent des bases de données, des langues et des interfaces différentes. L'équipe chargée de l'architecture centrale publie des modèles de concepts et de processus d'entreprise internes. Les diagrammes facilitent les discussions sur les conceptions. À partir de ces modèles, les équipes locales peuvent générer une partie de leurs schémas XML et de base de données, des déclarations C# et d'autres éléments.
Langages de modélisation personnalisés
Dans les exemples précédents, chaque société possède une utilisation très spécialisée de ses modèles. Même si vous pouvez représenter un système de suivi des bagages à l'aide d'un diagramme d'activités, une schéma plus formel du suivi des bagages serait une meilleure solution. Visual Studio prend en charge les méthodes suivantes :
Personnalisez un diagramme UML avec des stéréotypes. Les stéréotypes permettent de distinguer différents types d'éléments (par exemple, distinguer les comptoirs d'enregistrement des passagers et les stations à rayons X) et enregistrer les valeurs d'attributs supplémentaires dans chaque élément. Pour plus d'informations, consultez Comment : définir un profil pour étendre UML.
Créez votre propre langage spécifique au domaine (DSL) Si vous effectuez un grand nombre de tâches dans le domaine cible, l'effort supplémentaire peut justifier l'adaptation plus spécifique à vos besoins. Pour plus d'informations, consultez Visualisation et modélisation du kit de développement logiciel (SDK) - Langages spécifiques à un domaine.
Votre équipe peut créer des commandes de menu, des tests de validation et des éléments de boîte à outils pour ces deux types de modèles en utilisant le Kit de développement logiciel de Visual Studio. Vous pouvez également générer des extensions Visual Studio qui peuvent s'intégrer dans les diagrammes et les associer à des ressources externes, telles que des bases de données.