Plantillas Base [Guía de Usuario de Enterprise Architect]

Top Previous Next

Plantillas Base

button_main button_prev button_next

El Marco de Trabajo de Plantilla de Código consiste en un número de plantillas base. Cada plantilla base transforma aspectos particulares del UML a partes correspondientes a lenguajes orientados por objetos.

Temas

Tema

Detalle

Ver También

Más Información

Las plantillas base de una jerarquía, que varía levemente a través de diferentes de lenguajes de programación.

En una plantilla de jerarquía típica relevante a un lenguaje como C# o Java (que no tienen archivos de cabecera) las plantillas pueden ser modeladas como Clases, pero usualmente son sólo texto simple.

Esta jerarquía sería levemente más complicada para lenguajes como C++ y Delphi, que tienen plantillas de implementación separadas.

Cada uno de las plantillas base deben ser especializadas para que sean de uso en la ingeniería de código; en particular, cada plantilla es especializada para los lenguajes soportados (o 'productos').

Por ejemplo, hay una plantillaCuerpo de Clase definida para C++, otra para C#, otra para Java, y así sucesivamente; al especializar las plantillas puede ajustar el código generado para la entidad UML correspondiente.

Una vez que las plantillas base son especializadas para un lenguaje dado, pueden especializarse más basados en:

Un estereotipo de Clase

Un estereotipo de característica (donde la característica puede ser una operación o atributo)

 

Este tipo de especialización permite, por ejemplo, una operación C# que es estereotipada como «propiedad» para tener una plantilla de Cuerpo de Operación diferente de una operación ordinaria; la plantilla de Cuerpo de Operación puede especializarse más basada en el estereotipo de Clase.

 

Marco de Trabajo de Plantilla de Código

Plantillas de Código y Transformación

Referencia

La siguiente tabla lista y describe brevemente las plantillas base utilizadas en el CTF.

Plantilla

Descripción

Atributo

Una plantilla de alto nivel para generar variables de miembros de atributos UML.

 

Declaración de Atributo

Utilizado por la plantilla de Atributo para generar una declaración de variable de miembro.

 

Notas de Atributo

Utilizado por la plantilla Atributo para generar notas de variable de miembro.

 

Clase

Una plantilla de alto nivel para generar Clases de Clases de UML.

 

Base Clase

Utilizado por la plantilla Clase para generar un nombre de Clase base en la lista de herencia de una Clase derivada, donde la Clase base no existe en el modelo.

 

Cuerpo de Clase

Utilizado por la plantilla Clase para generar el cuerpo de una Clase.

 

Declaración de Clase

Utilizado por la plantilla Clase para generar la declaración de una Clase.

 

Interfaz de Clase

Utilizado por la plantilla Clase para generar un nombre de interfaz en la lista de herencia de una Clase derivada, donde la interfaz no existe en el modelo.

 

Notas de Clase

Utilizado por la plantilla Clase para generar las Notas de Clase.

 

Archivo

Una plantilla de alto nivel para generar el archivo fuente.

Para lenguajes como C++, esto corresponde al archivo de cabecera.

 

Importar Sección

Utilizado en la plantillaArchivo para generar dependencias externas.

 

Atributo Vinculado

Una plantilla de alto nivel para generar atributos derivados de Asociaciones UML.

 

Notas de Atributo Vinculado

Utilizado por la plantilla Atributo Vinculado para generar las notas del atributo.

 

Declaración de Atributo Vinculado

Utilizado por la plantilla Atributo Vinculado para generar la declaración del atributo.

 

Base de Clase Vinculada

Utilizado por la plantilla Clase para generar un nombre de Clase base en la lista de herencia de una Clase derivada, para un elemento Clase en el modelo que es padre de la Clase actual.

 

Interfaz de Clase Vinculada

Utilizado por la plantilla Clase para generar un nombre de interfaz en la lista de herencia de una Clase derivada, para un elemento de interfaz en el modelo que es padre de la Clase actual.

 

Espacio de Nombre

Una plantilla de alto nivel para generar espacios de nombres de paquetes UML (aunque no todos los lenguajes tienen espacios de nombres, esta plantilla puede ser utilizada para generar una construcción equivalente, tal como paquetes en Java).

 

Cuerpo de Espacio de Nombre

Utilizado por la plantilla Espacio de Nombre para generar el cuerpo de un Espacio de Nombre.

 

Declaración de Espacio de Nombre

Utilizado por la plantilla Espacio de Nombre para generar la declaración de Espacio de Nombre.

 

Operación

Una plantilla de alto nivel para generar operaciones desde operaciones de Clase UML.

 

Cuerpo de Operación

Utilizado por la plantilla Operación para generar el cuerpo de una operación UML.

 

Declaración de Operación

Utilizado por la plantilla Operación para generar la declaración de operación.

 

Notas de Operación

Utilizado por la plantilla Operación para generar documentación para una operación.

 

Parámetro

Utilizado por la plantilla Declaración de Operación para generar parámetros.

 

 

La segunda tabla lista plantillas utilizadas para generar código para lenguajes que tienen secciones separadas de interfaz e implementación.

Plantilla

Descripción

Clase Impl

Una plantilla de alto nivel para generar la implementación de una Clase.

 

Cuerpo de Clase Impl

Utilizado por la plantilla Clase Impl para generar la implementación de miembros de Clase.

 

Archivo Impl

Una plantilla de alto nivel para generar el archivo fuente.

 

Notas de Archivo Impl

Utilizado por la plantilla Archivo Impl para generar notas en el archivo fuente.

 

Importar Sección Impl

Utilizado por la plantilla Archivo Impl para generar dependencias externas.

 

Operación Impl

Una plantilla de alto nivel para generar operaciones desde operaciones de Clase UML.

 

Cuerpo de Operación Impl

Utilizado por la plantilla Operación para generar el cuerpo de una operación UML.

 

Declaración de Operación Impl

Utilizado por la plantilla Operación para generar la declaración de una operación.

 

Notas de Operación Impl

Utilizado por la plantilla Operación para generar documentación para una operación.