PDF de programación - Desarrollo de software orientado a objetos - Programación Orientada a Objetos

Imágen de pdf Desarrollo de software orientado a objetos - Programación Orientada a Objetos

Desarrollo de software orientado a objetos - Programación Orientada a Objetosgráfica de visualizaciones

Publicado el 20 de Mayo del 2018
1.317 visualizaciones desde el 20 de Mayo del 2018
1,4 MB
27 paginas
Creado hace 21a (12/11/2002)
Programación Orientada a Objetos

Desarrollo de software orientado a

objetos

Definición

Método de desarrollo de software que basa la arquitectura
del sistema en módulos deducidos de los tipos de objetos
que se manipulan, en lugar de basarse en la función o
funciones a las que el sistema está destinado a asegurar.

No preguntes primero qué hace el sistema, pregunta

¡¡A QUIÉN LO HACE!!

IAGP

1

Programación Orientada a Objetos

2.1 Orígenes
El tiempo transcurrido entre el desarrollo convencional del
software y el desarrollo orientado a objetos,no se solapa.
Hay más de 25 años, surgió con el lenguaje Simula, en Noruega,
aunque comercialmente se ha difundido recientemente.
Simulaes acrónimo de “simulación lenguaje” y fue creado para
soportar simulaciones, por O. J.Dahl yKristen Nygaard.
Su propósito fue la simulación de sistemas físicos complejos con
muchos cientos de componentes.
En Simula los módulos no se basan en procedimientos como en la
programación convencional, sino en los objetos físicos que se
modelan en la simulación.

IAGP

2

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

1

Programación Orientada a Objetos

Los objetos del mundo real pueden exhibir una variedad infinita de
efectos sobre otros, creando, destruyendo, levantando, uniendo,
comprando, doblándose, enviando, etc.
Esta gran variedad suscita un problema: ¿Cómo se pueden
representar en softwarelas diversas clases de interacciones ?
Los autores de Simula lograron una solución elegante a este
problema: el mensaje. Los objetos interaccionan el uno con el
otro con mensajes que piden que los objetos realicen sus métodos.
Un mensaje es simplemente el nombre de un objeto seguido por el
nombre de un método que el objeto sabe ejecutar. Si un método
requiere alguna información adicional para saber qué hacer, el
mensaje incluye la información como parámetros.

IAGP

3

Programación Orientada a Objetos

El objeto que inicia un mensaje se llama el remitente de ese
mensaje, y el objeto que recibe el mensaje se llama el receptor.
El hecho de que los métodos están asociados siempre a objetos
específicos tiene un efecto secundario interesante que resultaser
ventajoso. Diversos objetos pueden responder al mismo mensaje
genérico, pero cada objeto puede interpretar el mensaje de una
maneradistinta.
Por ejemplo, un objeto camión podría ponerenejecución su propia
versión del mensaje mueve_A, al igual que una nave, un tren, un
avión, una persona, o cualquier cosa que se mueva. En el mundo
real la manera en que estos objetos determinan sus rutas, planean
sus movimientos, y realizanestos desplazamientos se diferencia
radicalmente, pero todos entenderían una petición común de ir a un
destino especificado.

IAGP

4

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

2

Programación Orientada a Objetos

La capacidad de diversos objetos pararesponder al mismo mensaje
de diversas maneras se llama polimorfismo, que en griego
significa "muchas formas."
El término puede intimidar, y el polimorfismo a menudo se
considera un concepto avanzado en tecnología de objetos. Pero la
idea básica no podía ser más simple: cada objeto puede tener una
respuesta única al mismo mensaje.
A veces, una simulación implica solamente un ejemplo de una clase
particular de objeto. Sin embargo es mucho más común, necesitar
más de un objeto de cadatipo. Esta posibilidad levanta otra
preocupación: seríaextremadamente ineficaz redefinir los mismos
métodos en cada ocurrencia de ese objeto.

IAGP

5

Programación Orientada a Objetos

Aquí,otra vez, los autores de Simula aportaron una solución
elegante: la clase.
Una clase es una plantilla de software que define los métodos y las
variables que se incluirán en untipoparticular de objeto. Los
métodos y las variables que hacen el objeto se definen solamente
una vez, en la definición de la clase.
Los objetos que pertenecen a una clase se llaman generalmente
instancias de la clase y contienen solamente sus propios valores
particulares para las variables.
Un programa orientado a objetos (poo), se define de la forma:

Objetos + Mensajes = Programa

IAGP

6

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

3

Programación Orientada a Objetos

IAGP

7

Programación Orientada a Objetos

La programación orientada a objetos,se dice a menudo que es más
natural que la programación tradicional, y es verdad en dos niveles.

•En un nivel, la POO es más natural porque permite que
organicemos la información de la forma que nos esfamiliar,
según lo ilustrado en las jerarquías de lasclases.
•En otronivel más profundo, es más natural porque refleja
técnicas propias de la naturaleza para manejar complejidad.
Es interesante fijarse en la estructura de organismos vivos para
establecer un marco para entender la naturaleza adaptativadelos
objetos.

IAGP

8

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

4

Programación Orientada a Objetos

Programa OO

Clase

Objeto

Colección estructurada

de clases

Implementación de un TAD

Una instancia de una clase

Los objetos se comunican mediante mensajes

IAGP

9

Programación Orientada a Objetos

2.2 Comparación con los seres vivos
El bloque de edificio básico a partir del cual se componen los seres
vivos es la célula. Las células son "paquetes orgánicos", como
objetos, combinan la información relacionada y comportamiento.
La mayoría de la información está contenida en moléculas de
proteína,dentro del núcleo de la célula. El comportamiento, que
puede extenderse desde conversión de energía al movimiento, es
realizado por estructuras fuera del núcleo.
Las células están rodeadas por una membrana que permite
solamente ciertas clases de intercambios químicos con otras. Esta
membrana protege el funcionamiento interno de la célula contra la
intrusión exterior, y también oculta la complejidad,presentandoun
interfaz relativamente simple al resto del organismo.

IAGP 10

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

5

Programación Orientada a Objetos

Todas las interacciones entre las células ocurren a través de los
mensajes químicos,reconocidos por la membrana de la célula y
pasados asutravés al interior de la célula.

IAGP 11

Programación Orientada a Objetos
Los objetos que contienen a otros,se llaman objetos compuestos,
son importantes porque pueden representar estructuras más
sofisticadas que los objetos simples.
Unavión consiste en alas, motores, y otros componentes que son
demasiado complejos para representarlos de forma simple.
Colecciones de objetos
Hay una clase especial de clases, a menudo llamada la colección de
clases, que se puede encontrar en la biblioteca de clasesenla
mayoría de los lenguajes comerciales. Como el nombre sugiere, la
función básica de una colección es recolectar juntos los objetosque
se deben manejar como grupo.

IAGP 12

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

6

Programación Orientada a Objetos
En un avión, por ejemplo, no crearíamos una variable separada para
cada objeto del asiento, agruparíamos todos los objetos del asiento
en una colección y pondríamos una referencia a esa colección en un
solo conjunto llamado variable.

IAGP 13

Programación Orientada a Objetos
Aunque los mecanismos reales de células y de objetos apenas
podrían ser más diferentes, sus funciones son similares.
Las células y los objetos encapsulan datos y comportamientos
asociados; ambos tienen interfaces que definen qué señales
responderán a su ambiente; ambos utilizan la comunicación basada
en mensajes para ocultar complejidad; ambos se pueden organizar
en una jerarquía de tipos especializados; y ambos proporcionan los
bloques de edificio fundamentales para construir una variedad
infinita de sistemas complejos.
Esta semejanza, considerando la gran variedad de organismos vivos,
demuestra claramente la flexibilidad de este acercamiento básicoa a
la construcción de sistemas complejos.

IAGP 14

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

7

Programación Orientada a Objetos
¡La naturaleza, después de todo, ha estado utilizando el
acercamiento algunos miles demillones de años más que los
diseñadores del software!
Anatomía de los componentes de un mensaje
Un mensaje consiste detres partes:

•Un objetoreceptor
•Un método que el receptor sabe ejecutar
•Un conjunto de parámetros que el método requierepara
realizar su función

IAGP 15

Programación Orientada a Objetos
Respuestas a los mensajes
En la mayoría de los sistemas, los mensajes requieren una cierta
clase de respuesta del receptor. Esta respuesta es generalmente
llamadavalor de retorno, puede ser datos simples, valores u objetos.

IAGP 16

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

8

Programación Orientada a Objetos
La potencia de los polimorfismos, simplificaciónde programas
Supónganos que estamos desarrollando un sistema que incluya
instrumentos financieros tales como bonos y acciones.
El sistema debe permitir que realicemos una variedad de
operaciones tales como añadir una nueva acción, seguir el
funcionamiento de varias clases de instrumentos, y supervisión del
valor actual de la cartera en su totalidad.
Nuestra primera clase es cartera, un objeto compuesto que contiene
un objeto de la colección de objetos llamada
instrumentos_financieros.
Nuestro primer método es agregar, que toma un objeto
instrumento financiero como su parámetro.

IAGP 17

Programación Orientada a Objetos

IAGP 18

PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com

9

Programación Orientada a Objetos
2.3 Modularidad
Modularidad

•Extensibilidad + Reutilización

necesidad de

arquitecturas flexibles hechas con componentes a
  • Links de descarga
http://lwp-l.com/pdf11117

Comentarios de: Desarrollo de software orientado a objetos - Programación Orientada 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