Metodologías Orientadas a Objetos

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

METODOLOGÍA ORIENTADA A OBJETOS CARACTERISTICAS DEL PROCESO
Unidad 3 Lenguajes .Net y POO
Lenguaje Unificado de Modelado
Diagrama de Clases Por: Ing. Juan Carlos Contreras Villegas
Arquitectura CLARO-TECNOTREE
Introducción a la Orientación a Objetos
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
La Programación Orientado a Objetos
Fundamentos de Ingeniería de Software
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
UNIVERSIDAD LATINA (UNILA) INTRODUCCION A LA PROGRAMACIÓN
Aplicación del paradigma orientado a objetos
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
ORIENTADO A OBJETOS ESTUDIANTE JESSICA LORENA LEAL MEDINA INGENIERIA DE SOFTWARE PROGRAMA INGENIERIA DE SISTEMAS UNIVERSIDA COOPERATIVA DE COLOMBIA NEIVA-HUILA.
PROGRAMACION ORIENTADA
Programación orientada a objetos Rosemary Torrico Bascopé.
U NIDAD III P ROGRAMACIÓN O RIENTADA A O BJETOS (POO) Facilitadora: Ing. Patricia Gómez.
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
PROGRAMACIÓN ORIENTADA A OBJETOS
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Introducción a la programación Orientada a objetos
Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje
Ingeniería de Software

Fundamentos de Programación
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
Abstracción de Datos y Orientación a Objetos.. Vista General. Por qué la abstracción de datos y la programación orientada a objetos. Módulos y módulos.
LENGUAJE DE PROGRAMACIÓN
Programación Orientada a Objetos
DIEGO ALEJANDRO PAREJA TORO SEBASTIAN CHAVARRIA LONDOÑO 10ª2 01/02/12.
Programación Orientada a Objetos
Programación Orientada Objetos
Clase 03 ELEMENTOS DE COMPUTACIÓN Contenidos Objeto Clase Atributo Método Instancia Herencia Polimorfismo UML.
Tecnológico de Estudios Superiores Huixquilucan Fundamentos de Sistemas Ingeniería en Sistemas Computacionales Lic.: Lydia Villavicencio Gómez “Paradigmas.
Metodologías Orientadas a Objetos Maestría de Ingeniería Telemática Universidad del Azuay Sesión 2.
Elaborado por: GCRM Institución Gabriel García Márquez.
Sara Isabel Osorio Alacraz Ana Isabel Vallejo Grisales
INSTITUTO TECNOLOGICO DE MINATITLAN ASIGNATURA: FUNDAMENTOS DE PROGRAMACION DOCENTE: JOSE ANGEL TOLEDO ALVAREZ ALUMNA: ALEJANDRA OSORIO ARVISU SEMESTRE:
UML Carlos Becerra C. ¿Qué es orientación a objetos? Conceptos de OO  Objetos, características de los objetos, clases e instancias,
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Facultad de Ingeniería
Programación Orientada a Objeto
PROGRAMACION ORIENTADA A OBJETOS
Programación orientada a objetos (OPP)
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) TRADUCTORES Y ANALIZADOR LEXICOGRÁFICO.
Programación orientada a objetos
Clase 1 M.C Pedro Bello López.
Ingeniería de Requisitos
Ing. Esp. Ricardo Cujar. Programación Orientada a Objetos  Modelo de desarrollo de software.  Modo de pensar del hombre y no de la máquina.  Abstracción.
Programación orientada a objetos
UML Casos de Uso (repaso) y Diagramas de Clase
M.C. Pedro Bello López 1 IMPLEMENTACIÓN. M.C. Pedro Bello López2.
PROGRAMACIÓN IV INTRODUCCIÓN.
UNIVERSIDAD TECNOLÓGICA DE IZÚCAR DE MATAMOROS TECNOLOGÍAS DE LA INFORMACION Y COMUNICACIÓN BASE DE DATOS PARA APLICACIONES MTRO. GONZALO ROSAS CABRERA.
ORIENTACIÓN A OBJETOS El paradigma.
Programación Orientada a Objetos: CLASES Y OBJETOS
La Programación Orientado a Objetos
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Diagrama de Clases.
Paradigma Orientado a Objetos
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
Herencias Conceptos básicos i
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
1 Qué es UML Es un Lenguaje de Modelado Unificado basado en una notación gráfica que permite especificar,construir, visualizar y documentar los objetos.
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
Modelado UML Diagrama de Clases
Transcripción de la presentación:

Metodologías Orientadas a Objetos Maestría de Ingeniería Telemática Universidad del Azuay

Historia 1940 programación diseño y análisis 1957 diseño del misil nuclear Minuteman 1958 LISP John McCarthy Ten Dyke & Kunz: 1967 Lenguaje Simula – Noruega 1970’s Smalltalk, Alan Kay, Xerox PARC 1970 LISP, FLAVORS, LOOPS, CLOS 1976 Alphard 1977 CLU, LISP. 1980 UI, WIMP, Xerox, Apple, Windows, Openlook, OSF Motif. 1986 Actor Systems Ahga 1989 Eiffel y extensiones de C y Pascal. 1989 Biggerstaff & Ritcher, Prieto-Diaz & Freeman, Sommerville

Historia Simulación y lenguajes de 3ra generación Intercambio de mensajes entre objetos Máquina de estados finitos Estructura del programa vs. Estructura del problema. IA y la noción de actores. DoD 60’s-70’s soporta financiamiento de proyectos: CASE, IPSE, Unix, X/Windows, ADA Bases de Datos orientadas a objetos.

Historia 1991. Estandarización: OMG Object Management Group, 4GL CORBA, Common Object Request Broker Programación, Análisis y Diseño. Sistemas abiertos.

Historia Fase 1 - 1970's Fase 2 -1980's Fase 3 -1990's La Era de la Invención La Era de la Confusión La Era de madurez Simulación de eventos discretos Interfaces WIMP Enfoque en análisis y diseño Simula Xerox y Apple Sistemas abiertos Kay: FLEX machine extensiones de LISP Aplicaciones PARC: Dynabook entornos de IA Bases de datos orientadas a objetos Smalltalk Nuevos lenguajes: Eiffel, C++, … Estándares.

Ventajas Código Reutilizable. Mejores métodos y notación. Ciclo más corto de análisis diseño y programación. Incorpora ideas de IA, modelado de datos, TI, computación.

OOM (Object Oriented Methods) Programación Análisis Diseño Bases de Datos

Terminología básica Objetos: atributos y procedimientos Procedimientos= operaciones y métodos. Objeto = instancia Clases, entidades del mundo real.

Terminología Básica Encapsulamiento: Estructuras de Datos y detalles de los objetos están ocultos. Se accede a los objetos a través de mensajes que son procesados por los métodos. Encapsulamiento = abstracción.

Terminología Básica Mensajes: intercambio entre objetos Se evita duplicación de datos. El mensaje causa que los métodos de otro objeto se ejecuten. ~ llamadas a funciones.

Terminología Básica Herencia: los objetos pueden heredar características de sus clases y también de superclases más generales. Estructura conceptual del mundo Adicionar excepciones

Terminología Básica Polimorfismo: la misma expresión denota diferentes operaciones. Vinculación dinámica. Ejemplo: sobrecarga de operadores (+).

Abstracción y Encapsulamiento Abstracción: representación de las características esenciales sin incluir todos los detalles accesorios. Atributos abstractos: variables de instancia y de clase. Ejemplo: tamaño, posición color de un objeto. Métodos, operaciones o servicios: procedimientos para cambiar atributos o estados del objeto. (Máquina de estados finitos.) Operación: que mensajes puede procesar el objeto.

Abstracción y Encapsulamiento

Abstracción y Encapsulamiento

Abstracción y Encapsulamiento Encapsula: datos y procesos. Datos: atributos Variables e instancia. Variable de clase. Procesos: Métodos, operaciones o servicios: Procedimientos. Funciones.

Abstracción y Encapsulamiento Clase: colección de objetos con atributos y métodos comunes, de acuerdo a sus características y responsabilidades. Tipo abstracto de Datos: tipo de entidades de modelado de datos que incluyen métodos para el tratamiento de los datos. Clase <> Tipo.

Abstracción y Encapsulamiento Vinculación Dinámica: asociación de un objeto a una clase en tiempo de ejecución. Permite el polimorfismo. Vinculación estática: provista por el compilador.

Abstracción y Encapsulamiento Objeto: una clase, tipo abstracto de dato, o instancia de un tipo (de objeto). Instancia ~ registro en una base de datos. Clases abstractas: no pueden tener instancias sus hijos son otras clases. Aspectos internos: estados, implementación e instanciación. Aspectos externos: nombres de sus métodos y tipos de parámetros.

Abstracción y Encapsulamiento Encapsulamiento: ocultamiento de información. Estructura interna escondida y protegida respecto de otros objetos. Implementación: privada o pública. Los datos se acceden solamente a través de mensajes. Un mensaje es procesado por un método y puede contener cero o más parámetros.

Abstracción y Encapsulamiento Protocolo del objeto: conjunto de mensajes que puede responder. Selector: el nombre del mensaje. En compiladores de tipos fuertes los objetos no pueden recibir mensajes ilegales. Vinculación dimámica: c/objeto se responsabiliza de protegerse de los mensajes que recibe.

Abstracción y Encapsulamiento Polimorfismo y sobrecarga de operadores: Habilidad de usar el mismo símbolo para diferentes propósito cuando el contexto es claro. Habilidad de tomar diferentes formas en tiempo de ejecución. Ejemplo: abrir (ventana o fichero).

Abstracción y Encapsulamiento Polimorfismo: ad hoc. Universal. El mismo símbolo para operaciones no relacionadas semánticamente, coerción: para operar con mezclas de tipos. Universal: paramétrico e inclusión: capacidad de sustituir argumentos de un rango de tipos en la llamada a una función.

Abstracción y Encapsulamiento Genericidad: habilidad de definir módulos parametrizados. Ejemplo: una lista de nombres, lista de enteros, lista de empleados. Ada. MODULA-2, Algol. Ejemplo: red neuronal multicapa.

Herencia Elimina la redundancia de almacenar el mismo dato o procedimiento varias veces. La herencia se relaciona mediante clasificación jerárquica. IA: redes semánticas. Clasificación, generalización, tipo, composición, agregación o parte de. Pertenencia, similitud, autoría.

Herencia Redes de herencia: es un, del tipo de.

Herencia Herencia única o simple Herencia múltiple. Ejemplo: diferencia entre clases y superclases e instancias de objetos. La herencia permite reutilización pero también hace más compleja la descripción de los objetos y adiciona estructuras de herencia.

Terminología adicional Actores: delegación ~ herencia sin pertenencia a una clase. Un objeto delega a otro o le da permiso para ejecutar ciertas tareas. Auto recursividad o auto referencia: capacidad de enviar mensajes a sus propios métodos. Programación basada en objetos: encapsulamiento e identidad de objetos.

Terminología adicional Lenguajes basados en objetos: abstracción de conjuntos instancia/clase. Las clases se relacionan con la herencia. Sistemas orientados a objetos: heredan de la programación basada en objetos y de los sistemas basados en clases. (polimorfismo y herencia).

Relación entre términos basado en objetos = encapsulamiento + identidad del objeto basado en clases = basado en objetos + abstracción de conjuntos orientado a objetos = basado en clases + herencia y auto recursividad

¿Preguntas? Ejemplos de objetos degenerados. Representación de Objeto, Atributos y Métodos. Representación de paso de mensajes. Importancia del encapsulamiento. Clases y Herencia. Instanciación de un objeto.

Gracias por su atención.