ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

ajortizm25 de Septiembre de 2012

2.218 Palabras (9 Páginas)711 Visitas

Página 1 de 9

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

PCMOB = MNA + UMOO

PCMOB: pasos centrales en el modelado orientado a objetos

MNA: modelos que representan la realidad desde distintos puntos de vista o modelos en cada nivel de abstracción

UMOO: uso de la metodología orientada a objetos

LA ALGORITMIA V.S LA PROGRAMACION ORIENTADA A OBJETOS

PROBLEMAS A RESOLVER CON EL SOFTWARE (ENTRE OTROS):

a. Cantidad muy grande de requisitos que compiten entre sí.

b. Requisitos que se contradicen.

c. Dificultad de los usuarios para expresar con precisión sus necesidades para que los desarrolladores entiendan.

d. Usuarios con ideas vagas de lo que desean de un sistema de software.

e. Cada grupo no conoce bien el dominio del otro.

f. Los usuarios y los desarrolladores tienen perspectivas diferentes sobre la naturaleza del problema y realizan

distintas suposiciones sobre la naturaleza de la solución.

g. Las necesidades de un entorno se expresan mediante grandes cantidades de texto (documentos son difíciles

de comprender y abiertos a diversas interpretaciones.

h. Los Requisitos de un sistema de software cambian frecuentemente durante su desarrollo.

i. No es admisible desplazar un sistema existente cada vez que los requerimientos cambian, debido a la

inversión considerable que pudo haberse realizado.

j. Los sistemas grandes tienden a evolucionar en el tiempo.

PERSPECTIVA ALGORÍTMICA.

1. BLOQUE PRINCIPAL DE CONSTRUCCIÓN DE TODO EL SOFTWARE ES EL PROCEDIMIENTO O

FUNCIÓN: programas o conjuntos de instrucciones ejecutables, que se dividen en subrutinas.

2. Los datos = con lo que se alimenta a los programas para que realicen su función (papel secundario).

3. Algoritmos + Estructura de datos = Programas

4. Clave = decidir qué procedimientos se quieren y en utilizar los mejores algoritmos que se encuentren.

5. Descomposición = descomposición algorítmica (descomposición de algoritmos grandes en otros más

pequeños

6. Cada módulo del sistema representa un paso importante de algún proceso global.

7. Se tiende a producir sistemas frágiles, ya que si los requisitos cambian y el sistema aumenta, los sistemas

serán tediosos de mantener.

DESCOMPOSICIÓN ORIENTADA A OBJETOS.

1. El principal bloque de construcción de todos los sistemas software es el objeto o clase.

2. Todo objeto tiene: identidad, estado (existen datos asociados a él), y comportamiento (se le pueden hacer

cosas al objeto, y él a su vez puede hacer cosas a otros objetos).

3. En esta descomposición el mundo es un conjunto de agentes autónomos (objetos) que colaboran para llevar a

cabo algún comportamiento de nivel superior.

4. No existen algoritmos concebidos como elementos independientes

5. Existen operaciones asociadas a los objetos pertenecientes al sistema.

6. Cada objeto posee su propio comportamiento bien definido.

7. Los objetos hacen cosas, y se les pide que hagan lo que saben hacer mediante el paso de mensajes.

8. Los datos forman la jerarquía básica.

9. Una clase son unos datos y unos métodos que operan sobre esos datos.

10. Objetos + Flujo de mensajes = Programas

COMPARACION ENTRE DESCOMPOSICIÓN ALGORÍTMICA CONTRA DESCOMPOSICIÓN

ORIENTADA A OBJETOS.

¿CUÁL ES LA MEJOR FORMA DE DESCOMPONER UN SISTEMA COMPLEJO. POR ALGORITMOS O

POR OBJETOS?

Según Booch (1996):

1. Ambas visiones son importantes ya que: “la visión algorítmica enfatiza el orden de los eventos, y la visión

orientada a objetos resalta los agentes que o bien causan acciones o bien son sujetos de estas acciones”.

Sin embargo, dice Booch:

2. “No se puede construir un sistema complejo de las dos formas a la vez porque son vistas completamente

perpendiculares”.

3. “Existe una gran ventaja de la descomposición orientada a objetos ya que produce sistemas más pequeños

a través de la reutilización de mecanismos comunes, proporcionando así una importante economía de

expresión. Además, Los sistemas orientados a objetos son también más resistentes al cambio y por tanto

están mejor preparados para evolucionar en el tiempo, porque su diseño está basado en formas

intermedias estables”.

4. “En realidad, la descomposición orientada a objetos reduce en gran medida el riesgo que representa

construir sistemas de software complejos, porque están diseñados para evolucionar de forma incremental

partiendo de sistemas más pequeños en los que ya se tiene confianza. Es más, la descomposición orientada

a objetos resuelve directamente la complejidad innata del software ayudando a tomar decisiones respecto a

la separación de intereses en un gran espacio de estados”.

PARADIGMA EN EL DESARROLLO DE SOFTWARE: LA ORIENTACIÓN A OBJETOS (OO)

COMPONENTES DE LA OO:

Contiene un conjunto de metodologías y herramientas para el modelado y el desarrollo de software.

OBJETIVO DE LA OO:

Hacer más fácil el desarrollo de sistemas complejos a partir de componentes individuales.

ANTECEDENTES DE LA OO:

AÑO: 1960

INVESTIGADORES: Dr. Nygaard, Dahl y Myrhaug

ENTORNO: Universidad de Noruega

TRABAJO: Desarrollo de sistemas informáticos para simular sistemas físicos (funcionamiento de motores)

DIFICULTADES ENCONTRADAS:

a. Programas existentes muy complejos y

b. necesariamente tenían que ser muy modificables.

SOLUCION: Si un sistema físico estaba compuesto por N componentes, el software debería contener N

módulos, uno por cada componente (diseño de software con estructura paralela al sistema físico que

incidiera en una máxima correspondencia entre el sistema e informático). Lo anterior teniendo en cuenta

que cada componente contenia su abstracción en un módulo informático y que los módulos interactuaban

enviándose mensajes, al igual que los sistemas físicos los cuales se comunican enviándose señales.

PRODUCTO: Lenguaje Simula-67

RESULTADOS:

a. Ofrecer una forma dividir un programa muy complejo en partes más sencillas y,

b. simplificar al maximo el mantenimiento del software, permitiendo el cambio de componentes

completos, o la modificación del comportamiento de uno de ellos, sin producir efectos colaterales.

AÑO: Década de los 70

INVESTIGADORES: Alan Kay, Adele Goldberg y Dan Ingalls

ENTORNO: de la Universidad de Utah

TRABAJO diseño de un entorno y un lenguaje de programación llamado Smalltalk , que incorporaba las

ideas de la orientación a objetos

AÑO: Decada de los 80

INVESTIGADORES: Bjarne Stroustrup,

ENTORNO: ATT-Bell

TRABAJO: diseño del lenguaje C++ , como sucesor del C (Stroustrup, 1986)

AÑO: 1991

INVESTIGADORES: Bertrand Meyer

ENTORNO: ATT-Bell

TRABAJO: creó el lenguaje Eiffel, reconocido en su momento como el más completo y elegante de los

lenguajes orientados a objetos (LOO).

En forma simultanea se diseño para la inteligencia artificial el lenguaje CLOS ( Common Lisp Object

System ), sucesor del lenguaje Lisp (Moon, 1989; Steel, 1990).

En la actualidad existe un lenguaje de gran impacto en la industria de desarrollo de software: el lenguaje

Java , lenguaje OO desarrollado por Sun Microsystems en 1995.

ESTANDARIZACIÓN DE LAS METODOLOGÍAS ORIENTADAS A OBJETOS

Aparece el OMG (Object Management Group ), utilizado por muchas empresas y casas de software. OMG

produce especificaciones, para proyectos de desarrollo de software cumpliendo el ciclo de vida desde el

análisis hasta la implementación, instalación, realización de pruebas en tiempo de ejecución y

mantenimiento.

Dentro del marco de la metodología OMG cobra gran importancia la especificación UML ( Unified

Modeling Language ), que estandariza la representación del análisis y diseño orientado a objetos.

Revisando antecedentes históricos y la actualidad de la OO, se puede concluir que el Paradigma

Orientado a objetos resalta el uso del modelado de un sistema, detallando el domino del problema como

un conjunto de objetos que se comunican entre sí mediante mensajes, permitiendo que la estructura de los

programas refleje directamente el del problema que se desea

...

Descargar como (para miembros actualizados) txt (16 Kb)
Leer 8 páginas más »
Disponible sólo en Clubensayos.com