martes, 18 de septiembre de 2007
1. Conceptos básicos del modelo orientado a objetos.
1.1 Reconocimiento de objetos y clases en el mundo real y la interacción entre ellos.
¿Qué es una clase?
Las clases son conjuntos de objetos con características similares.
1.2 La abstracción y el encapsulamiento como un proceso natural.
Encapsulamiento: El encapsulamiento es el proceso de ocultar la información de un obejto para que no pueda ser vista por otro objeto.
1.3 La POO y la complejidad del software.
1.4 Conceptos del ciclo de vida del software.
- Análisis
- Diseño
- Programación
- Prueba
- Manrenimiento
1.5 Elementos primordiales en el modelo de objetos.
- Abstracción.
- Modularidad.
- Encapsulamiento.
- Jerarquía.
- Polimorfismo.
1.6 Historia de los paradigmas en el desarrollo del software.
- Imperativo
- Declarativo
- Lógico
- Funcional
- Estructurado
- Orientado a Objetos
- Visual
- Paralelo
Podemos considerar estos paradigmas como una forma de clasificar a los lenguajes de progamación.
1.7 Beneficios del modelo de objetos y de la POO sobre otros paradigmas.
- Uniformidad. Ya que la representación de los objetos implica tanto el análisis como el diseño y la codificación de los mismos.
- Comprensión. Tanto los datos que componen los objetos, como los procedimientos que los manipulan, están agrupados en clases, que se corresponden con las estructuras de información que el programa trata.
- Flexibilidad. Al tener relacionados los procedimientos que manipulan los datos con los datos a tratar, cualquier cambio que se realice sobre ellos quedará reflejado automáticamente en cualquier lugar donde estos datos aparezcan.
- Estabilidad. Dado que permite un tratamiento diferenciado de aquellos objetos que permanecen constantes en el tiempo sobre aquellos que cambian con frecuencia permite aislar las partes del programa que permanecen inalterables en el tiempo.
- Reusabilidad. La noción de objeto permite que programas que traten las mismas estructuras de información reutilicen las definiciones de objetos empleadas en otros programas e incluso los procedimientos que los manipulan. De esta forma, el desarrollo de un programa puede llegar a ser una simple combinación de objetos ya definidos donde estos están relacionados de una manera particular.
Beneficios que se obtienen del desarrollo con POO
Los objetos son portables y la herencia permite la reusabilidad del código orientado a objetos. Es más sencillo modificar código existente porque los objetos no interaccionan excepto a través de mensajes; es decir, son independientes en consecuencia a un cambio en la codificación de un objeto no afectará la operación con otro objeto siempre que los mensajes respectivos permanezcan intactos. La introducción de tecnología de objetos como una herramienta conceptual para analizar, diseñar e implementar aplicaciones permite obtener aplicaciones más fáciles de modificar, fácilmente extensibles y a partir de componentes reutilizables.
El código reutilizable, disminuye el tiempo en el desarrollo y hace que el desarrollo del software sea más intuitivo porque la gente piensa naturalmente en términos de objetos más que en términos de algoritmos de software.