Programacion orientada a objetos primera entrega

Solo disponible en BuenasTareas
  • Páginas : 8 (1945 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de enero de 2012
Leer documento completo
Vista previa del texto
Programación Orientada a Objetos

I. Desarrollo de Software Orientado a Objetos

1. El desarrollo del software
2. Modularidad
3. Conceptos fundamentales de POO
4. Modelado de objetos: Relaciones

Tema 1: El Desarrollo

del Software

La Programación Orientada a Objetos (en adelante POO), surge a partir de la llamada crisis del software.[pic]

La causa, parece ser la complejidad inherente al propio software:
Complejidad del dominio del problema
Interacción usuario-desarrollador
Cambios requisitos durante desarrollo
Dificultad en el proceso de desarrollo
Los programadores hacen partes distintas que han de ser compatibles
Flexibilidad que se requiere al software

unida al ciclo de vidadel software en cascada:
Análisis
Diseño
Implementación
Pruebas
Mantenimiento
Existían barreras para pasar de un escalón a otro, además hay que dar más importancia a la fase de mantenimiento:
REUTILIZACIÓN DEL CÓDIGO EXISTENTE

Calidad del software: Factores

Eficiencia: buen uso de los recursos.
Transportabilidad: entre plataformas distintas.
Verificabilidad:facilidad de comprobar el software.
Integridad: protección de sus componentes.
Facilidad de uso.
Corrección: hacer lo que se pide sin fallos.
Robustez: salvar situaciones anormales.
Extensibilidad: capacidad de cambio o evolución.
Reutilización: ahorro de trabajo.
Compatibilidad: facilidad de combinar subprogramas.

En resumidas cuentas:

Programaciónmediante abstracción

Abstracción del mundo real.
Abstracción de la máquina.

Abstracción es la capacidad de aislar y encapsular la información del diseño y la ejecución.

Evolución de la abstracción:

|Procedimientos |Módulos |TADs |Objetos |
| datos globales | parte visible| exportar tipos | compartición de código |
|datos locales |parte oculta |proporcionar operaciones tipo |reutilización |
| | |proteger datos | |
| ||ocultar implementación | |
| | |ejemplares múltiples | |

Características del modelo objeto

1. Modularización: descomponer la aplicación en partes más pequeñas.
2. Abstracción.
3. Encapsulación: ocultación de información.
4. Jerarquización:relaciones de herencia o generalización (es_un) y relaciones de contenido o agregación (tiene_un).
5. Polimorfismo: capacidad de referirse a objetos de clases distintas en una jerarquía utilizando el mismo elemento de programa para realizar la misma operación, pero de formas distintas.

Características deseables en el modelo objeto

6. Concurrencia.
7. Persistencia: un objeto puede seguirexistiendo tras desaparecer su antecesor.
8. Genericidad (unidades genéricas de programación).
9. Manejo de excepciones.

Tema 2: Modularidad

Modularización

Descomponer un programa en un número pequeño de abstracciones coherentes que pertenecen al dominio del problema y enmascaran la complejidad interna.

Según Liskov, modularizar es dividir un programa en módulos que pueden ser compiladosseparadamente pero existiendo conexiones entre los módulos.

Parnas dice además que deben (las conexiones) seguir el criterio de ocultación.

Booch piensa que la modularización deber ser propiedad de un sistema que ha sido descompuesto en un conjunto de módulos cohesivos y débilmente acoplados.

Acoplamiento

Es la interacción entre módulos, sus propiedades deberían ser:
1. Facilitar la...
tracking img