Apuntes ED05 Diseño Orientado A Objetos Elaboración de Diagramas Estructurales
Apuntes ED05 Diseño Orientado A Objetos Elaboración de Diagramas Estructurales
Elaboración
de diagramas estructurales.
Esta es una unidad introductoria al paradigma de orientación a objetos, en la que
conocerás cuales son las principales características de esta forma de desarrollar
software en oposición a la metodología estructurada.
1. Pantalla principal.
2. Opciones.
1. Atajos de teclado.
2. Importación de diagramas.
3. Exportación de diagramas.
4. Salvar diagramas.
3. Elementos del diagrama.
4. El diagrama.
5. Edición de las propiedades.
El enfoque estructurado.
Sin embargo, cómo se hace es algo que ha ido evolucionando con el tiempo, en un
principio se tomaba el problema de partida y se iba sometiendo a un proceso de
división en subproblemas más pequeños reiteradas veces, hasta que se llegaba a
problemas elementales que se podía resolver utilizando una función. Luego las
funciones se hilaban y entretejían hasta formar una solución global al problema de
partida. Era, pues, un proceso centrado en los procedimientos, se codificaban
mediante funciones que actuaban sobre estructuras de datos, por eso a este tipo de
programación se le llama programación estructurada. Sigue una filosofía en la que
se intenta aproximar qué hay que hacer, para así resolver un problema.
La orientación a objetos ha roto con esta forma de hacer las cosas. Con este
nuevo paradigma el proceso se centra en simular los elementos de la realidad
asociada al problema de la forma más cercana posible. La abstracción que permite
representar estos elementos se denomina objeto, y tiene las siguientes
características:
● Está formado por un conjunto de atributos, que son los datos que le
caracterizan y
● Un conjunto de operaciones que definen su comportamiento. Las
operaciones asociadas a un objeto actúan sobre sus atributos para modificar
su estado. Cuando se indica a un objeto que ejecute una operación
determinada se dice que se le pasa un mensaje.
Una clase está formada por un conjunto de procedimientos y datos que resumen
características similares de un conjunto de objetos.
Una clase se describe por su nombre (identifica cada clase del programa) y
por un conjunto de elementos que se denominan miembros. Estos miembros
son:
Los valores asignados a los atributos de un objeto concreto hacen a ese objeto ser
único. La clase define sus características generales y su comportamiento.
Así es, el objeto tiene un estado formado por los valores concretos que toman los
atributos de la clase a la que pertenece, además para modificar estos valores
tenemos que hacerlo utilizando los métodos de la clase a través del paso de
mensajes.
1.4.- Visibilidad.
El principio de ocultación es una propiedad de la orientación a objetos que
consiste en aislar el estado de manera que sólo se puede cambiar mediante
las operaciones definidas en una clase. Este aislamiento protege a los datos de
que sean modificados por alguien que no tenga derecho a acceder a ellos,
eliminando efectos secundarios e interacciones. Da lugar a que las clases se dividan
en dos partes:
● El estado debe ser privado. Los atributos de una clase se deben modificar
mediante métodos de la clase creados a tal efecto.
● Las operaciones que definen la funcionalidad de la clase deben ser públicas.
● Las operaciones que ayudan a implementar parte de la funcionalidad deben
ser privadas (si no se utilizan desde clases derivadas) o protegidas (si se
utilizan desde clases derivadas).
Existe un caso particular de clase, llamada clase abstracta, que por sus
características, no puede ser instanciada. Se suelen usar para definir métodos
genéricos relacionados con el sistema que no serán traducidos a objetos concretos,
o para definir las interfaces de métodos, cuya implementación se postpone a futuras
clases derivadas.
Ejemplo de objetos:
Existe un caso particular de clase, llamada clase abstracta, que, por sus
características, no puede ser instanciada. Se suelen usar para definir métodos
genéricos relacionados con el sistema que no serán traducidos a objetos concretos,
o para definir métodos de base para clases derivadas.
Mientras que un objeto es una entidad que existe en el tiempo y el espacio, una
clase representa sólo una abstracción, "la esencia" del objeto, si se puede decir así.
2.1.1.- Notación.
Una notación es un conjunto de símbolos y técnicas para combinarlos, que en el
contexto UML, permiten crear diagramas normalizados. Estas representaciones
posibilitan al analista o desarrollador describir el comportamiento del sistema
(análisis) y los detalles de una arquitectura (diseño) de forma no ambigua.
Que una notación sea detallada no significa que todos sus aspectos deban ser
utilizados en todas las ocasiones. Utilizar UML debe facilitar el
desarrollo/entendimiento de todos los participantes en el proyecto y no complicarlo.
¡Si se crean todos los diagramas al máximo nivel de detalle podría liar más que
aclarar!.
2.1.3.- Métodos
Diagramas estructurales.
Diagramas de comportamiento.
Las herramienta CASE para la elaboración de diagramas UML sirven solo para
la generación de los diagramas asociados al análisis y diseño de una
aplicación. ¿Verdadero o falso? FALSO
Así es, además de permitir la creación y edición de los diagramas tienen
funcionalidad para la documentación, la generación automática de código y
operaciones de ingeniería inversa, que generan diagramas a partir de código
fuente o incluso binario.
2.3.1.- Generación de la documentación.
Como en todos los diagramas UML, podemos hacer las anotaciones que
consideremos necesarias abriendo la especificación de cualquiera de los elementos,
clases o relaciones, o bien del diagrama en si mismo en la pestaña "Specification".
La ventana del editor cuenta con herramientas para formatear el texto y darle un
aspecto bastante profesional, pudiendo añadir elementos como imágenes o
hiperenlaces.
Generar informes
Desde VP-UML accedemos a Tools >> Reports >> Report writer y seleccionamos el
tipo de informe que queremos.
Desde el SDE para NetBeans seleccionamos Modelin >> Reports >> Report writer.
En ambos casos, una vez que elegimos el tipo de informe, obtendremos la siguiente
ventana en la que seleccionamos entre otros:
● Es un software gratuito.
● Es multiplataforma.
● Incluye un módulo para integrarse con Eclipse.
● Dispone de la versión web UMLetino http://www.umletino.com/umletino.html,
que no precisa instalación.
3.2.- Atributos.
Forman la parte estática de la clase. Son un conjunto de variables para las que es
preciso definir:
● Su nombre.
● Su tipo, puede ser un tipo simple, que coincidirá con el tipo de dato que se
seleccione en el lenguaje de programación final a usar, o compuesto,
pudiendo incluir otra clase.
● Público (+): Se pueden acceder desde cualquier clase y cualquier parte del
programa.
● Privado(-): Sólo se pueden acceder desde operaciones de la clase.
● Protegido(#): Sólo se pueden acceder desde operaciones de la clase o de
clases derivadas en cualquier nivel.
● Paquete(~): se puede acceder desde las operaciones de las clases que
pertenecen al mismo paquete que la clase que estamos definiendo. Se usa
cuando el lenguaje de implementación tiene esta característica como es el
caso de Java.