Pré. | Proc. |
Gabarits de base
Le Framework Code Gabarit se compose d'un certain nombre de gabarits de base. Chaque gabarit de base transforme des aspects particuliers de l' UML en parties correspondantes de langages orientés objet.
Les gabarits de base forment une hiérarchie, qui varie légèrement selon les différents langages de programmation. Dans une hiérarchie de gabarit typique pertinente pour un langage tel que C# ou Java (qui n'ont pas de fichiers d'en-tête), les gabarits peuvent être modélisés en tant que classes, mais ne sont généralement que du texte brut. Cette hiérarchie serait légèrement plus compliquée pour des langages tels que C++ et Delphi, qui ont des gabarits d'implémentation gabarits .
Chacun des gabarits de base doit être spécialisé pour être utile à l'ingénierie du code ; en particulier, chaque gabarit est spécialisé pour les langages supportés (ou 'produits'). Par exemple, il existe un gabarit défini pour C++, un autre pour C# , un autre pour Java, etc. en spécialisant les gabarits , vous pouvez personnaliser le code généré pour l'entité UML correspondante.
Une fois que les gabarits de base sont spécialisés pour une langue donnée, ils peuvent être spécialisés davantage en fonction de :
- Le stéréotype d'une classe, ou
- Le stéréotype d'une fonctionnalité (où la fonctionnalité peut être une opération ou un attribut)
gabarits de base utilisés dans le CTF
Gabarit |
La description |
---|---|
Attribut |
Un gabarit de niveau supérieur pour générer des variables membres à partir d'attributs UML . |
Déclaration d'attribut |
Utilisé par le gabarit Attribute pour générer une déclaration de variable membre. |
Notes sur les attributs |
Utilisé par le gabarit Attribute pour générer des notes de variables membres. |
Classer |
Un gabarit de niveau supérieur pour générer des classes à partir de classes UML . |
Base de classe |
Utilisé par le gabarit de classe pour générer un nom de classe de base dans la liste d'héritage d'une classe dérivée, lorsque la classe de base n'existe pas dans le modèle. |
Corps de classe |
Utilisé par le gabarit Class pour générer le corps d'une Class. |
Déclaration de classe |
Utilisé par le gabarit Class pour générer la déclaration d'une Class. |
Interface de classe |
Utilisé par le gabarit de classe pour générer un nom d'interface dans la liste d'héritage d'une classe dérivée, où l'interface n'existe pas dans le modèle. |
Notes de cours |
Utilisé par le gabarit de classe pour générer les notes de classe. |
Dossier |
Un gabarit de niveau supérieur pour générer le fichier source. Pour les langages tels que C++, cela correspond au fichier d'en-tête. |
Section d'importation |
Utilisé dans le gabarit File pour générer des dépendances externes. |
Attribut lié |
Un gabarit de niveau supérieur pour générer des attributs dérivés des associations UML . |
Notes sur les attributs liés |
Utilisé par le gabarit Linked Attribute pour générer les notes d'attributs. |
Déclaration d'attribut lié |
Utilisé par le gabarit Linked Attribute pour générer la déclaration d'attribut. |
Base de classe liée |
Utilisé par le gabarit de classe pour générer un nom de classe de base dans la liste d'héritage d'une classe dérivée, pour un élément de classe dans le modèle qui est un parent de la classe actuelle. |
Interface de classe liée |
Utilisé par le gabarit de classe pour générer un nom d'interface dans la liste d'héritage d'une classe dérivée, pour un élément d'interface dans le modèle qui est un parent de la classe actuelle. |
Namespace |
Un gabarit de niveau supérieur pour générer des espaces de noms à partir de Paquetages UML (bien que tous les langages n'aient pas d'espaces de noms, ce gabarit peut être utilisé pour générer une construction équivalente, telle que Paquetages en Java). |
Corps de l'espace de Namespace |
Utilisé par le gabarit Namespace pour générer le corps d'un espace de noms. |
Déclaration d'espace de Namespace |
Utilisé par le gabarit Namespace pour générer la déclaration d'espace de noms. |
Opération |
Un gabarit de niveau supérieur pour générer des opérations à partir des opérations d'une classe UML . |
Corps d'opération |
Utilisé par le gabarit Operation pour générer le corps d'une opération UML . |
Déclaration d'opération |
Utilisé par le gabarit Operation pour générer la déclaration d'opération. |
Notes le fonctionnement |
Utilisé par le gabarit Operation pour générer la documentation d'une opération. |
Paramètre |
Utilisé par le gabarit Operation Declaration pour générer des paramètres. |
Gabarits pour générer du code pour les langages avec des sections d'interface et d'implémentation séparées
Gabarit |
La description |
---|---|
Impl de classe |
Un gabarit de niveau supérieur pour générer l'implémentation d'une classe. |
Corps de classe Impl |
Utilisé par le gabarit Class gabarit pour générer l'implémentation des membres de Class. |
Fichier d'implémentation |
Un gabarit de niveau supérieur pour générer le fichier d'implémentation. |
Notes de fichier Impl |
Utilisé par le gabarit File gabarit pour générer des notes dans le fichier source. |
Section d'importation Impl |
Utilisé par le gabarit File gabarit pour générer des dépendances externes. |
Opération Impl |
Un gabarit de niveau supérieur pour générer des opérations à partir des opérations d'une classe UML . |
Opération Corps Impl |
Utilisé par le gabarit Operation pour générer le corps d'une opération UML . |
Déclaration d'opération Impl |
Utilisé par le gabarit Operation pour générer la déclaration d'opération. |
Notes d'opération Impl |
Utilisé par le gabarit Operation pour générer la documentation d'une opération. |