Programación orientada a objetos Conceptos Básicos y Características
Paradigmas de Programación Nociones básicas
Programación Estructurada Abstracción de Operaciones
Programación Estructurada Estructura de un módulo
Programación Estructurada vs. Programación Orientada a Objetos Énfasis en la transformación de datos. Las funciones y los datos son manejados como entidades separadas Difícil de entender y modificar Énfasis en la abstracción de datos. Las funciones y los datos son encapsulados en una entidad Facilita el mantenimiento y su comprensión es más orientada al mundo real
Programación Orientada a Objetos. Nociones básicas Paradigma de Programación Se enfoca principalmente en los Datos y Objetos a diferencia de la programación estructurada que se enfoca en los Algoritmos . Permite organizar la información de forma muy parecida al mundo real ya que se modela en base a objetos. Programación Orientada a Objetos. Nociones básicas
Estado Métodos Conjunto de atributos Condición actual del objeto Programación Orientada a Objetos. Nociones básicas. Objeto = estado + métodos Estado Métodos Conjunto de atributos Condición actual del objeto Varía dinámicamente No es directamente accesible desde afuera, ni tampoco modificable “puertos de entrada del objeto. Responden a mensajes Única forma de entrada al objeto Lenguaje con que el exterior se puede comunicar con el objeto
Programación Orientada a Objetos. Características fundamentales Cohesión Abstracción Encapsulamiento Polimorfismo Herencia
Programación Orientada a Objetos. Clases y Objetos. Definiciones Instancia de una clase Cada objeto tiene su propio estado y eventualmente puede poseer comportamientos adicionales a los establecidos por la clase Es una entidad dinámica Clases Plantilla o modelo que define atributos(características) y métodos (funciones y procedimientos) Posee una estructura y un comportamiento Agrupa a todos los objetos que posean la misma estructura y comportamiento Es una entidad estática Programación Orientada a Objetos. Clases y Objetos. Definiciones
Programación Orientada a Objetos. Clases y Objetos. Ejemplo Aveo Color: gris, marca: chevrolet, año: 2010, número de puertas: 4. Clase Vehículo Atributos: color, marca, año, número de puertas, entre otros atributos. Métodos: arrancar, acelerar, frenar Programación Orientada a Objetos. Clases y Objetos. Ejemplo
Características relevantes de los Objetos Tienen identidad y encapsulan estado y comportamiento. Poseen Atributos que representan valores simples o referencias a otros Objetos. Comportamiento definido por métodos (funciones y procedimientos)
Programación Orientada a Objetos. En concreto La Programación Orientada a Objetos es un método en el que los programas se organizan como colecciones cooperativas de objetos, cada uno de los cuales representan una instancia de alguna clase , quienes a su vez pueden ser miembros de una jerarquía de clases unidas mediante relaciones de herencia. Programación Orientada a Objetos. En concreto
Programación Orientada a Objetos. Ejercicio Para los siguientes elementos determina cuáles son clases y cuáles son objetos, así como también cuáles se encuentran relacionados bajo Herencia. Toma dos casos y especifica sus métodos y atributos. Lista de elementos: Equipo Electrónico, Transporte, Toyota, Profesor, El carro de Juan Pérez, Estudiante, Motocicleta, Doctor, Persona, Preparador, Juan Pérez, Mi Celular, Acelerar, Apagar, Televisor, Animales, Sony, Herbívoro, Conejo, Ipod, Mamífero, Gato, Frenar, Avión, León, Brillante, Motorola. Programación Orientada a Objetos. Ejercicio