ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
POO
1. Curso de Objetos C++ Conceptos Básicos Realizadopor: Ing. Cèsar Villacìs
2. Conceptos Básicos de la POO Introducción La Programación Orientada a Objetos es un paradigma de programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de 1990. La programación orientada a objetos expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los programas y módulos más fáciles de escribir, mantener y reutilizar.
3. Conceptos Básicos de la POO Qué es la Programación Orientada a Objetos Es un método de implementación en el que los programas se organizan como colecciones cooperativas de objetos cada uno de los cuales representa una instancia de alguna clase, y cuyas clases son todas ellas miembros de una jerarquía de clases unidas mediante la herencia. La Programación Orientada a Objetos utiliza objetos no algoritmos como sus bloques lógicos de construcción fundamentales. Cada objeto es una instancia de una clase. Las clases se relacionan una con otra por medio de la herencia.
4. Conceptos Básicos de la POO Características de la Programación Orientada a Objetos Sus principales características son: Se agrupan en grupos denominados clases Contienen datos internos que definen su estado actual. Soportan ocultamiento de datos. Pueden heredar propiedades de otros objetos. Pueden comunicarse con otros objetos enviando o pasando mensajes. Tienen métodos que definen su comportamiento
5. Conceptos Básicos de la POO Principios de Programación Orientada a Objetos Sus principios son: abstracción, encapsulación, modularidad, jerarquía, herencia polimorfismo
6. Conceptos Básicos de la POO Abstracción Abstracción es... la amplificación de lo esencial y la eliminación de lo irrelevante. “Una abstracción denota características esenciales de un objeto que lo distinguen de todos los demás tipos de objeto y proporciona así fronteras conceptuales nítidamente definidas a la perspectiva del observador”.
7. Conceptos Básicos de la POO Encapsulamiento Encapsular es agrupar en una misma entidad las estructuras de datos y las funciones, ocultando la implementación bajo una interface. Implementación es la manera cómo se llevan a cabo las operaciones, es decir que tipo de datos se utilizan, cuanta memoria utilizan, etc. Si todos los datos miembro de una clase estuvieran disponibles para cualquiera, entonces el usuario podrá hacer lo que quiera con la clase y no habría manera de forzar un comportamiento en especial. De ahí, la necesidad de mantener claramente separada y protegida la interface y la implementación. El encapsulamiento (encapsulación) es el proceso de almacenar es un mismo compartimento los elementos de una abstracción que constituyen su estructura y su comportamiento; sirve para separar el interfaz contractual de una abstracción y su implantación.
8. Conceptos Básicos de la POO Modularidad La modularidad es la propiedad que tiene un sistema que ha sido descompuesto en un conjunto de módulos cohesivos y débilmente acomplados.
9. B Conceptos Básicos de la POO Herencia Herencia es el mecanismo que permite que un clase A herede propiedades de una clase B. Decimos "A hereda de B". Objetos de la clase A tienen así acceso a los atributos y métodos de la clase B sin necesidad de redefinirlos. Definición (Superclase/Subclase) Si la clase A hereda de la clase B, entonces B es la superclase de A. A es subclase de B. A
10. Conceptos Básicos de la POO Jerarquía “La jerarquía es una clasificación u ordenación de abstracciones”. Jerarquías de un sistema complejo: Estructura de clases (jerarquía “de clases”). Estructura de objetos (jerarquía “de partes”). Herencia Es la jerarquía “de clases” más importante. Define una relación entre clases, en la que una clase comparte la estructura de comportamiento definida en una o más clases (lo que se denomina herencia simple o herencia múltiple).
11. Conceptos Básicos de la POO Polimorfismo “poly” muchos, varios “morph” forma o apariencia. En la programación orientada a objetos, “morph” forma se refiere a la interface o a las propiedades de los objetos mientras que “poly” que la interface o los atributos de los objetos son diferentes. Las interfaces son fundamentales en los sistemas orientados a objetos ya que es la manera de conocerlos. Se dice que dos o más objetos son polimórficos si tienen interfaces idénticas pero comportamiento diferente; desde el punto de vista del cliente esos objetos son indistinguibles. El polimorfismo se logra cuando una clase hereda la interfaz de otra clase ya sea total o parcial o bien, con tipo o sin tipo.
12. Formas drarw() erase() Circulo Cuadrado Linea drarw() erase() drarw() erase() drarw() erase() Conceptos Básicos de la POO Polimorfismo Cuando se le envía una solicitud a un objeto, la operación que se ejecuta depende tanto del mensaje como del objeto que lo recibe. Los objetos que atienden mensajes idénticos pueden tener implementaciones diferentes.