PDF de programación - INGENIERÍA DEL SOFTWARE I - Tema 7 - Repaso de Orientación a Objetos

Imágen de pdf INGENIERÍA DEL SOFTWARE I - Tema 7 - Repaso de Orientación a Objetos

INGENIERÍA DEL SOFTWARE I - Tema 7 - Repaso de Orientación a Objetosgráfica de visualizaciones

Publicado el 14 de Enero del 2017
884 visualizaciones desde el 14 de Enero del 2017
899,2 KB
27 paginas
Creado hace 14a (30/09/2009)
INGENIERÍA DEL SOFTWARE I

Tema 7

Repaso de Orientación a Objetos

Univ. Cantabria – Fac. de Ciencias

Francisco Ruiz

Objetivos
• Repasar los conceptos fundamentales del paradigma

de Orientación a Objetos.

Francisco Ruiz - IS1

Repaso 7.2

1

• Polimorfismo
• Persistencia

Contenido
• Introducción
Justificación
Problemas

• Objetos
Estado
Comportamiento
Identidad

• Clases

Encapsulamiento

• Relaciones

Asociaciones
Agregaciones
Generalización

Francisco Ruiz - IS1

Repaso 7.3

Bibliografía
• Básica

La correspondiente de las asignaturas donde se incluye la

programación orientada a objetos.

• Complementaria

Meyer, B. (1999): Construcción de Software Orientado a

Objetos. 2da edición. Prentice-Hall.

Budd, T. (2002): Object Oriented Programming. Third

edition. Addison Wesley.

Francisco Ruiz - IS1

Repaso 7.4

2

Introducción
• Evolución de la OO

Origen: finales de los años 60

Primeras investigaciones y prototipos no industriales

Difusión: mediados de los 80

ObjectOrientedProgrammingWorkshop, de IBM
1st International ConferenceonObjectOrientedProgramming

Systems, LanguagesandApplications-OOPSLA

Madurez: mediados de los 90

Aprobación de estándares
Extensión de productos

Francisco Ruiz - IS1

Repaso 7.5

Introducción
• Áreas de Aplicación:

Lenguajes de programación
Bases de datos
Reingeniería de procesos
CASE
Inteligencia artificial
Sistemas operativos
Interfaces de usuario

• Beneficios Potenciales:

Mejorar la calidad del software
Acortar los tiempos de desarrollo
Aumentar la productividad del programador
Incrementar la reutilización del software

Francisco Ruiz - IS1

Repaso 7.6

3

Introducción - Justificación

¿Por qué la Orientación a Objetos?

Proximidad de los conceptos de modelado respecto de

las entidades del mundo real
Mejora captura y validación de requisitos
Acerca el “espacio del problema” y el “espacio de la

solución”

Modelado integrado de propiedades estáticas y

dinámicas del ámbito del problema
Facilita construcción, mantenimiento y reutilización

Francisco Ruiz - IS1

Repaso 7.7

Introducción - Justificación

¿Por qué la Orientación a Objetos?

Conceptos comunes de modelado durante el análisis,

diseño e implementación

Facilita la transición entre distintas fases
Favorece el desarrollo iterativo del sistema
Disipa la barrera entre el “qué” y el “cómo”

Sin embargo, existen problemas ...

Francisco Ruiz - IS1

Repaso 7.8

4

Introducción - Problemas

“...Los conceptos básicos de la OO se conocen desde hace dos
décadas, pero su aceptación todavía no está tan extendida
como los beneficios que esta tecnología puede sugerir”

“...La mayoría de los usuarios de la OO noutilizan los
conceptos de la OO de forma purista, como inicialmente se
pretendía. Esta práctica ha sido promovida por muchas
herramientas y lenguajes que intentan utilizar los conceptos
en diversos grados”

--Wolfgang Strigel

Francisco Ruiz - IS1

Repaso 7.9

Introducción - Problemas

Un objeto contiene datos y operaciones que operan sobre

los datos, pero ...

Podemos distinguir dos tipos de objetos degenerados:

Un objeto sin datos (que sería lo mismo que una

biblioteca de funciones)

Un objeto sin “operaciones”, con sólo operaciones del tipo

crear, recuperar, actualizar y borrar (que se
correspondería con las estructuras de datos tradicionales)

Un sistema construido con objetos degenerados no es un

sistema verdaderamente orientado a objetos

“Las aplicaciones de gestión están constituidas
mayoritariamente por objetos degenerados”

Francisco Ruiz - IS1

Repaso 7.10

5

Objetos

• Cualquier cosa, ocurrencia o fenómeno que puede ser

identificado y caracterizado

• Entidad definida por un conjunto de atributos comunes

y los servicios u operaciones asociados

• Máquina abstracta que define un protocolo a través
del cual los usuarios del objeto pueden actuar sobre el
mismo. Puede tener un estado que se almacena en una
pieza encapsulada de software.

Francisco Ruiz - IS1

Repaso 7.11

Objetos
• La representación abstracta del objeto informático
es una imagen simplificada del objeto del mundo
real.

• Se acostumbra a considerar los objetos como seres
animados con vida propia (nacen, viven y mueren).

• Un objeto puede caracterizar una entidad física

(coche) o abstracta (ecuación matemática).

Francisco Ruiz - IS1

Repaso 7.12

6

Objetos

• Unidad atómica formada por la unión

de estadoy comportamiento.
Estado: valores de los atributos
Comportamiento: conjunto de

servicios asociados

• La encapsulaciónproporciona una

cohesión interna fuerte y un
acoplamiento externo débil.

• Para manipular los objetos se utilizan

mensajes.

Comportamiento

visible

OBJETO

Estado interno

Objeto = Estado + Comportamiento + Identidad

Francisco Ruiz - IS1

Repaso 7.13

Objetos

En UML, un objeto se representa por un rectángulo con

un nombre subrayado

Banco de Valencia

Cuenta Corriente 101

Cuenta Corriente 114

Juan

Felipe

Francisco Ruiz - IS1

Repaso 7.14

7

Objetos - Estado

• El estado contiene los valores de

sus atributos (variables) cuya
información cualifica al objeto.

Un atributo toma un valor en un

dominio concreto

• El estado en un instante dado
corresponde a una selección de
valores de entre todos los posibles
en cada atributo.

Automóvil

Verde

120 CV

1000 Kg.

Francisco Ruiz - IS1

Repaso 7.15

Objetos - Estado
• El estado evoluciona con el

tiempo.

• Hay componentes

constantes (marca del
automóvil, potencia, etc.).

• Generalmente el estado de

un objeto es variable.

Automóvil

50 litros

Recorrido de
150 Km.

Automóvil

30 litros

Francisco Ruiz - IS1

Repaso 7.16

8

Objetos - Comportamiento

Prim e r O bjeto

M ensaje

Segundo

O bjeto

M étodo 1

M étod o 2

.......

M étodo n

• Describe las accionesy reaccionesde los objetos.
• Cada operación / método es un átomo de

comportamiento.

• Las operaciones se desencadenan por estímulos
externos (mensajes), enviados por otros objetos.

Francisco Ruiz - IS1

Repaso 7.17

Objetos - Comportamiento

Un sistema OO puede verse como un conjunto de
objetos autónomos y concurrentes que trabajan de
manera coordinada en la consecución de un fin
específico.

El comportamiento global se basa pues en la

comunicación entre los objetos que lo
componen.

Francisco Ruiz - IS1

Repaso 7.18

9

Objetos - Comportamiento

En base a su comportamiento, se pueden
establecer varias categorías de objetos:
Activos – Pasivos

Activo: posee un hilo de ejecución (thread) propio y

puede iniciar una actividad

Pasivo: no puede iniciar una actividad pero puede

enviar estímulos una vez que se le solicita un servicio

Clientes – Servidores , Agentes

Cliente es el objeto que solicita un servicio.
Servidor es el objeto que provee el servicio solicitado.

Francisco Ruiz - IS1

Repaso 7.19

Objetos - Comportamiento
• Los agentes reúnen las características de clientes y

servidores.
Son la base del mecanismo de delegación.
Introducen indirección: un cliente puede comunicarse con

un servidor que no conoce directamente.

Un agente

2:

3:

Servidor 1

Servidor 2

1:

Un cliente

Francisco Ruiz - IS1

Repaso 7.20

10

Objetos - Comportamiento

La unidad de comunicación entre objetos se llama

mensaje

Objeto 1

1: Mensaje A

Objeto 2

Objeto 3

2: Mensaje C

3: Mensaje D

4: Mensaje E

Objeto 4

Francisco Ruiz - IS1

Repaso 7.21

Objetos - Comportamiento

Un estímulo (evento) causará la invocación de una

operación, la creación o destrucción de un objeto o la
aparición de una señal.

Un mensaje es la especificación de un estímulo.

Tipos de flujo de control en mensajes:

Llamada a procedimiento o flujo de control anidado

Síncrono

Flujo de control plano

Asíncrono

Retorno de una llamada a procedimiento

Francisco Ruiz - IS1

Repaso 7.22

11

Objetos - Identidad
• Cada objeto posee un oid, que establece la identidad del

objeto y tiene las siguientes características:
Constituye un identificador único y global para cada objeto dentro del

sistema.

Es determinado en el momento de la creación del objeto.
Es independiente de la localización física del objeto, es decir, provee

completa independencia de localización.

Es independiente de las propiedades del objeto, lo cual implica

independencia de valor y de estructura.

Dos objetos se pueden distinguir a pesar de tener atributos

idénticos.

No cambia durante toda la vida del objeto. Además, un oid no se

reutiliza aunque el objeto deje de existir.

No se tiene ningún control sobre los oids y su manipulación resulta
• No se representa en el modelado de manera específica.

transparente.

Francisco Ruiz - IS1

Repaso 7.23

Clases

El mundo real puede ser visto desde abstracciones

diferentes (subjetividad)

Mecanismos de abstracción:

Clasificación / Instanciación
Composición / Descomposición
Agrupación / Individualización
Especialización / Generalización

La clasificación es uno de los mecanismos de abstracción más

utilizados

Francisco Ruiz - IS1

Repaso 7.24

12

Clases

La clase define el ámbito de definición de un

conjunto de objetos

Cada objeto pertenece a una clase

L
  • Links de descarga
http://lwp-l.com/pdf1069

Comentarios de: INGENIERÍA DEL SOFTWARE I - Tema 7 - Repaso de Orientación a Objetos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad