Ing. Johanna Macias Algoritmo, Estructura y Programación III
El panorama de hace años. Antes del 1975 Programación sin base metodológica Problemas para el mantenimiento y rediseño de software ya construidos. Inexistencia de metodología Programas difíciles de comprender para cualquier otro programador. Sistemas con problemas para la documentación.
El panorama de hace años. Años Programación Estructurada Metodología estructurada y flujo de datos Mayor control en el desarrollo de sistema Funcional en pequeños y medianos software Problemas para el mantenimiento y rediseño de software macros (más de 500mil líneas de código)
El panorama de hace años. Años 90 Programación Orientada a Objeto Reutilización de códigos Documentación de software Robustez, facilidad y escalabilidad Solución del problema en base a los elementos reales que lo integran Facilidad para el Rediseño y mantenimiento
Definición de Programación Orientada a Objeto
Clases Es una abstracción de Objetos. Representan a un conjunto de objetos con un comportamiento e interfaz común. Dentro de cada clase se pueden crear múltiples objetos. Es una plantilla para la creación de objetos. Usando la “instanciación” se crea un objeto.
Ejemplo de Clases: MI_CARRO
Objetos: Una unidad que contiene datos y las funciones que operan sobre esos datos. Los datos se denominan atributos y las funciones métodos. Los datos y las funciones se encapsulan en una única entidad. Los datos están ocultos y sólo mediante las funciones miembro (métodos) es posible acceder a ellos.
Ejemplo de Clases: MI_CARRO
Estado y Mensajes en Objetos Un estado es una propiedad o atributo del objeto, del cual podemos capturar su valor. Un Mensaje es una llamada a una de las acciones o métodos del objeto para que este se ejecute.
Jerarquía entre Clases y Objetos Define el orden y la relación entre clases y Objetos Se pueden identificar tres elementos: Raíz: Clase Madre. Contiene todos los métodos y propiedades genéricas Clase Intermedia: Son subclases de la Raíz, comparte los métodos y propiedades de la raíz con otras propiedades y eventos especificas. Objeto Terminal: Son los objetos instanciados de las clases intermedias, que comparte sus mismos atributos y métodos pero con valores específicos.
Relaciones y Herencia Las relaciones son líneas de comunicación entre las clases y objetos. Son normalmente controladas a través de punteros. La herencia es la capacidad que tiene un objeto de utilizar las propiedades y métodos de su clase mayor. A través de la herencia los eventos y propiedades no necesitan ser redefinidos.