Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Diseño Orientado a Objetos - Apuntes - Diseño de sistemas - Parte 1, Apuntes de Diseño de Sistemas

Apuntes del curso universitario de Informatica sobre el Diseño Orientado a Objetos - El protocolo de un objeto es el conjunto de mensajes que éste entiende .  Un objeto sabrá responder a los mensajes de su protocolo, estos determinan su comportamiento.  Uno podría, sin conocer el nombre del objeto, inferir qué es en función del comportamiento que posee. Nos interesa saber qué sabe hacer un objeto.

Tipo: Apuntes

2012/2013

Subido el 03/05/2013

Alejandro_87
Alejandro_87 🇦🇷

4.4

(294)

697 documentos

1 / 14

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Diseño de Sistemas
Conceptos OOD
Lic. Viviana Ortiz
docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Vista previa parcial del texto

¡Descarga Diseño Orientado a Objetos - Apuntes - Diseño de sistemas - Parte 1 y más Apuntes en PDF de Diseño de Sistemas solo en Docsity!

Diseño de Sistemas

Conceptos OOD

Lic. Viviana Ortiz

Temario

 Temas complementarios OOP

 Análisis Orientado a Objetos

 Diseño Orientado a Objetos

 Repaso de criterios de buen diseño

 Más criterios de buen diseño

 Principio de Sustitución Liskov/Wing

 Principio de Inversión de Dependencia

 Principio de Segregación de Interfaces

 Diagrama de Secuencia

Concepto de protocolo

 El protocolo de un objeto es el conjunto de mensajes

que éste entiende.

 Un objeto sabrá responder a los mensajes de su

protocolo , estos determinan su comportamiento.

 Uno podría, sin conocer el nombre del objeto, inferir qué

es en función del comportamiento que posee. Nos

interesa saber qué sabe hacer un objeto.

4 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Responsabilidades de los objetos

 Un objeto sólo hará lo que tenga que hacer y no

más para llevar a cabo su responsabilidad (responder al

mensaje) el resto lo delegará.

 Tendremos entonces sistemas con muchos objetos

“vagos” que colaborarán entre sí para hacer algo.

Decimos que son vagos porque no harán más que lo que

les corresponde.

 Este concepto es primordial en un buen DOO.

5 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Análisis Orientado a Objetos (cont.)

 Encontrar los objetos:

 Son las entidades que normalmente se encuentran en el

dominio del problema. Usualmente se dice que encontrando

los sustantivos localizamos los objetos, lo díficil es encontrar

los objetos relevantes del dominio.

 Organizar los objetos:

 Existen varios criterios, uno es considerar cuanto de

similares son los objetos entre sí (concepto de herencia)

otro es considerar los objetos que trabajan para otros o

como un objeto es parte de otro.

7 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Análisis Orientado a Objetos (cont.)

 Interacción entre objetos:

 Para estudiar como interactúan los objetos en el sistema

podemos describir diferentes escenarios o casos de uso

en los cuales los objetos se comunican para lograr una

funcionalidad.

 Operaciones de los objetos:

 Las operaciones son tanto las primitivas (crear, agregar,

borrar, informar) como las que surgen de sus

responsabilidades.

 Definir los objetos internamente:

 Se define la información que mantendrán los objetos, su

estructura.

8 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2010

Categorías de clases conceptuales

Categoría de clase conceptual Ejemplos Objetos tangibles o físicos Avion Especificaciones, diseños o descripciones de las cosas DescripcionDelVuelo Lugares Aeropuerto Transacciones Reserva Roles de la gente Piloto, Pasajero Contenedores de otras cosas Avión Cosas de un contenedor Pasajero Otros sistemas informáticos externos al sistema ControlDeTraficoAereo Conceptos abstractos CompañiaAerea Hechos Vuelo, Aterrizaje Procesos (normalmente no se representan como conceptos, pero podría ocurrir)

ReservaUnAsiento

Reglas y políticas PoliticaDeCancelacion Catálogos CatalogoDePiezas Registros de finanzas, trabajo, contratos, cuestiones legales RegistroMantenimiento Instrumentos y servicios financieros Stock Manuales, documentos, artículos de referencia, libros ManualReparaciones

10 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Análisis Orientado a Objetos (cont.)

 Una vez identificadas las clases se agregarán las

asociaciones entre ellas.

 Una asociación es una relación entre clases conceptuales

que indican algún conexión significativa.

 Guía para las asociaciones:

 Centrarse en aquellas asociaciones para las que necesita

conservar el conocimiento de la relación durante algún tiempo

(asociación “necesito-conocer”).

 Evitar mostrar asociaciones redundantes.

11 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Repaso de criterios de buen diseño

 También se aplican a Diseño Orientado a Objetos!

 Repasemos:

 Descomposición

 Divide & Conquer

 Modularidad

 Colección bien definida de partes e interacciones bien delimitadas

 Information Hiding

 Confinar el impacto del cambio (a un módulo)

 El cliente de un módulo no debe conocer los detalles de diseño

13 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011

Repaso de criterios de buen diseño (cont)

 (^) Encapsulamiento  (^) Clara separación de interface e implementación  (^) Mecanismos para no conocer ni usar más de lo que la interface ofrece

 (^) Abstracción  (^) Foco en lo esencial

 (^) Design for change  (^) Diseños lo suficientemente flexibles para soportar cambios a bajo costo, concentrándose en la posible evolución del sistema.

 (^) Single Responsibility Principle  (^) Cada clase debe tener una sola responsabilidad

14 Esta presentación provee una referencia a los temas, para su estudiodeberá utilizar la bibliografía. 2011