Programación orientada a objetos usando C

Superior  Previo  Próximo

Las siguientes convenciones se usan para el programado orientado a objetos en C.

Para configurar Enterprise Architect para soportar el programado orientado a objetos usando C, debe configurar la opción Soporte orientado a objetos a verdadero en la página Especificaciones C de la ventana Opciones.

Estereotipo

Estereotipo

Aplica a

Corresponde a

Enumeration

Clase

Un tipo enum.

struct

Clase

Un tipo struct.

 

Atributo

Una palabra clave struct en una definición variable.

union

Clase

Un tipo union.

 

Atributo

Una palabra clave union en una definición variable.

typedef

Clase

Una cláusula typedef, donde el padre es el nombre tipo original.

Valores etiquetados

Etiqueta

Aplica a

Corresponde a

typedef

Clase con estereotipo de enumeration, struct o union.

Esta clase definida en una cláusula typedef.

anonymous

Clase con estereotipo de enumeration, struct o union.

El nombre de esta clase definida sólo para la cláusula typedef.

bodyLocation

Operación

La ubicación en la cual se genera el cuerpo del método. Los valores esperados son header, classDec o classBody.

define

Atributo

Cláusula #define.

Generación de código C orientada a objetos para el modelo

La idea básica de implementar una clase UML en código C es agrupar la variable de los datos (Atributos UML) en un tipo de estructura. Esta estructura se define en un archivo .h para que este se pueda compartir por otras clases y el cliente al que  este refiere.

Una operación en una clase UML se implementa en código C como una función. El nombre de la función debe ser un nombre completamente calificado que consiste del nombre de la operación, así como también el nombre de la clase para indicar  que la operación es para esa clase. Un delimitador (especificado en la opción Delimitador del espacio de nombre en la página Especificaciones C) se usa para unir el nombre de la Clase y el nombre de la función (Operación).

La función en código C también debe tener un parámetro de referencia al objeto Clase. Puede modificar las opciones Referencia como parámetro de la operación, Estilo del parámetro de referencia y Nombre del parámetro de referencia en la página Especificaciones C para soportar este parámetro de referencia.

Limitaciones del programa orientado a objetos en C

1.

Ningún mapeo del alcance para un atributo: un atributo en una clase UML se mapea a una variable estructurada en código C, y se ignora su alcance (privado, protegido, o público).

2.

Actualmente se ignora una Clase interna: Si una Clase UML es la Clase interna de otro Clase UML, es ignorado cuando se genera código C.

3.

Se ignora el valor inicial: el valor inicial de un atributo en una Clase UML se ignora en el código C generado.

Vea también