Actividades

Solo disponible en BuenasTareas
  • Páginas : 19 (4504 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de mayo de 2011
Leer documento completo
Vista previa del texto
Metodología de la Programación:
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. Lenguajes de POO 5. Modelado de objetos: Relaciones

II. POO con C++
6. Clases y objetos 7. Clases abstractas y herencia 8. Polimorfismo 9. Genericidad 10. Excepciones

III. Diseño y ReutilizaciónOrientado a Objetos
11. Reutilización de software con C++ 12. Diseño orientado a objetos

IV. El lenguaje C++
13. Sintaxis del lenguaje 14. De C a C++ 15. Construcción de programas en C++ 16. Puesta a punto de programas. Errores típicos de programación

Tema 1: El Desarrollo del Software
La Programación Orientada a Objetos (en adelante POO), surge a partir de la llamada crisis del software.1968

caro poco fiable escaso

La causa, parece ser la complejidad inherente al propio software:

i i i

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 alciclo de vida del 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

-2-

Calidad del software: Factores
i i i i i i i i i i
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ón mediante 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 • datos globales • datos locales

aMódulos • parte visible • parte oculta

aTADs • exportar tipos • proporcionar
operaciones tipo

aObjetos • compartición de
código

• reutilización

• protegerdatos • ocultar
implementación

• ejemplares
múltiples

-3-

Características del modelo objeto
1. 2. 3. 4. 5. Modularización: descomponer la aplicación en partes más pequeñas. Abstracción. Encapsulación: ocultación de información. Jerarquización: relaciones de herencia o generalización (es_un) y relaciones de contenido o agregación (tiene_un). Polimorfismo: capacidad de referirse a objetosde 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. 7. 8. 9. Concurrencia. Persistencia: un objeto puede seguir existiendo tras desaparecer su antecesor. Genericidad (unidades genéricas de programación). Manejo de excepciones.

-4-

Tema 2: ModularidadModularizació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 compilados separadamente pero existiendo conexiones entre los módulos. Parnas dice además que deben (las conexiones) seguir el criterio de ocultación. Boochpiensa 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. 2. Facilitar la sustitución de un módulo realizando pocos cambios en los otros. Facilitar el seguimiento y aislamiento de un error (módulo defectuoso).

Cohesión
Es la...
tracking img