PROGRAMACIÓN ORIENTADA A OBJETOS

Slides:



Advertisements
Presentaciones similares
METODOLOGÍA ORIENTADA A OBJETOS CARACTERISTICAS DEL PROCESO
Advertisements

PROGRAMACION ORIENTADA A OBJETOS
Tema #1 Programación Orientada a Objetos
Lenguaje de programación Java
ALGORITMICA II - Tipos Abstractos de Datos (TAD)
Programación Orientada a Objetos
Introducción a la Orientación a Objetos
Programación Orientada a Objetos (P.O.O.)
El proceso de desarrollo de software
El proceso de desarrollo de software
La Programación Orientado a Objetos
POO Santiago, Mayo 2004 TRABAJO DE INVESTIGACIÓN POO Programación Orientada a Objetos CENAFOM Carolina Bravo V. Jaime Jofré B.
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
1.3 Programación modular. Subprogramas.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Ingeniería del Software
PROGRAMACION ORIENTADA A OBJETOS
ORIENTADO A OBJETOS ESTUDIANTE JESSICA LORENA LEAL MEDINA INGENIERIA DE SOFTWARE PROGRAMA INGENIERIA DE SISTEMAS UNIVERSIDA COOPERATIVA DE COLOMBIA NEIVA-HUILA.
PROGRAMACION ORIENTADA
UNIDAD I. INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS EN JAVA.
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.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
UNIVERSIDAD TECNOLÓGICA DE HERMOSILLO T.S.U. EN T.I.C., Área: Sistemas Informáticos Ing. José Padilla Duarte y estudiantes de Sistemas Informáticos Hermosillo,
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Tema 6: Clases Antonio J. Sierra.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Objetos.
PROGRAMACIÓN ORIETADA A OBJETOS
Ingeniería de Software

Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Fundamentos de Programación
UNIVERSIDAD DEL CAUCA - PIS Ing. Miguel Angel Niño Zambrano EDII1 Programación Orientada a Objetos Repaso.
Fundamentos de programación
Programación Orientada a Objetos usando CONSTRUCTORES DESTRUCTORES.
Programación Orientada a Objetos
Universidad Domingo Savio
Herencia y tipos ● Cuanta memoria se debe asignar a un objeto cuando se asigna en la pila ● La asignación debe hacerse antes de que se conozca la cantida.
Programanción I Ing. Cristhian Garita Fonseca
Constructor  Un constructor es un método que inicia un objeto inmediatamente después de su creación. De esta forma nos evitamos el tener que iniciar.
Sara Isabel Osorio Alacraz Ana Isabel Vallejo Grisales
Programación Orientada a Objetos
PROGRAMACION OOP Ing. Miguel Jaime IBM ACE Certificación.
Facultad de Ingeniería
Programación Orientada a Objeto
PROGRAMACION ORIENTADA A OBJETOS
Programación orientada a objetos (OPP)
Patrones de diseño equipo n.1
Programación orientada a objetos
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
M.C. Pedro Bello López 1 IMPLEMENTACIÓN. M.C. Pedro Bello López2.
Abstracción El concepto de abstracción es esencial en ciencias de la computación. Un programa es en sí mismo una abstracción, un modelo de la resolución.
FUNDAMENTOS DE PROGRAMACION
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Programación orientada a objetos
Introducción a la Orientación a Objetos
Programación Orientada a Objetos: CLASES Y OBJETOS
La Programación Orientado 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.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
:: Prof. Yeniffer Peña Introducción a JAVA Presentación Programación I.
Prof. Manuel B. Sánchez. Declaración de Objetos Una vez que la clase ha sido implementada se pueden declarar objetos como variables locales de métodos.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
PROGRAMACION ORIENTADA A OBJETOS
Transcripción de la presentación:

PROGRAMACIÓN ORIENTADA A OBJETOS

1. 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 relaciones de herencia.

Características Esta basado en Objetos, se modela y se piensa en los Objetos y lo que estos pueden hacer, o lo que se puede hacer con estos. Se pueden construir fácilmente nuevas aplicaciones sin mucho esfuerzo La Herencia puede ser una herramienta muy útil en POO, y al mismo tiempo puede ser FATAL.

P.O.O. - Lenguajes Ada Modula Smalltalk (Alan Kay) Java (Sun Microsystems) Eiffel C++ Object Pascal C#

1.1 Mecanismos básicos La tecnología orientada a objetos se apoya en los fundamentos de la ingeniería, cuyos elementos reciben el nombre global de modelo de objetos El modelo de objetos abarca principios de: Abstracción Encapsulación Modularidad Jerarquía Tipos Concurrencia y Persistencia

Jenkins y Glasgow observan que la mayoría de los programadores trabajan en un lenguaje y utilizan un solo estilo de programación. Sugieren que hay cinco tipos principales de estilos de programación: Orientada a procedimientos (Algoritmos) Orientada a objetos (Clases y objetos) Orientados a lógica (Objetivos, a menudo expresados como calculo de predicados) Orientados a reglas (Reglas si-entonces [if-then]) Orientados a restricciones (Relaciones invariantes)

Modelo de Objetos Hay cuatro elementos fundamentales en este modelo: Abstracción Encapsulamiento Modularidad Jerarquía

Existen otros tres elementos secundarios: Tipos (tipificación) Concurrencia Persistencia

1.2 Objetos Un objeto es: Una cosa tangible y/o visible Algo que puede comprenderse intelectualmente Algo a lo que se dirige un pensamiento o acción Es una abstracción de una entidad del mundo real. Toda interacción con el mundo externo es por medio de una interface.

Definición de Objeto Un objeto tiene estado, comportamiento e identidad; la estructura y comportamiento de objetos similares están definidos en su clase común; los términos instancia y objeto son intercambiables

Estado El estado de un objeto se compone de todas las propiedades de un objeto (estáticas) Y los valores asociados a ellas (dinámicos). Estos valores pueden ser: Simples O denotar a otro objeto. Estado = Atributos = Datos miembro

1.3 Mensajes y métodos El mensaje es la acción que realiza un objeto sobre otro, la petición de servicio. El método es la respuesta al mensaje, la forma de proporcionar el servicio. Son los procesos (funciones o procedimientos) que permiten trabajar con los datos de los objetos Existe una clasificación de los métodos según su objetivo: Constructores Destructores Iteradores Selectores Modificadores Consultivos

Constructores Una operación que crea un objeto y/o inicializa su estado. El constructor es un proceso que se encarga de: Reservar espacio de memoria para los datos del objeto Inicializar los atributos del objeto (darle un estado inicial) Tipos de Constructor: Oficio, Copia, con Parámetros

class Rectangulo{ int x; int y; int ancho; int alto; Rectangulo(int x1, int y1, int w, int h){ x=x1; y=y1; ancho=w; alto=h; }

Constructor de oficio Inicializa los atributos con valores definidos por el implementador de la clase. Ej. Fecha::Fecha() { d=1; m=1; a=2001; }

Constructor de copia Inicializa los atributos del objeto con los datos provenientes de otro objeto de la misma clase. Ej. Fecha::Fecha(const Fecha &f2) { d=f2.d; m=f2.m; a=f2.a; }

Constructor con parámetros Inicializa el objeto con datos provenientes de los parámetros. Ej. Fecha::Fecha(byte dd, byte mm,Word aa) { SetFecha(dd, mm, aa); }

Destructor Una operación que libera el estado de un objeto y/o destruye el propio objeto Sus principales cometidos son: Liberar los recursos computacionales que el objeto de dicha clase haya adquirido en su tiempo de ejecución al expirar éste. Quitar los vínculos que pudiesen tener otros recursos u objetos con éste. Los destructores son invocados automáticamente al alcanzar el flujo del programa el fin del ámbito en el que está declarado el objeto.

Modificador Permite cambiar el estado de un objeto, modificando los atributos del mismo. Ej. Void Fecha::SetDia(byte dd) { SetFecha(dd, m, a); }

Selector Permite devolver el valor de los atributos sin alterar su estado. Ej. byte Fecha::GetDia() { return d; }

Iteradores Una operación que permite acceder a todas las partes de un objeto en algún orden perfectamente establecido. Es un objeto que permite a un programador recorrer los elementos de una colección, sin tener en cuenta su implementación específica. Tiene dos operaciones principales: referenciar un elemento particular en una colección (llamado elemento de acceso), y modificarse a sí mismo para que apunte al siguiente elemento.

Identidad Es la propiedad de un objeto que lo distingue de todos los demás objetos No hay que confundir el nombre de un objeto con el objeto mismo. Ej. perro != &perro; Puede haber varias variables que se refieran al mismo objeto, pero no varios objetos con la misma identidad. Ej. perro * raza = &razaperro; Puede haber objetos con el mismo estado pero identidades diferentes. Ej. perro_ladador = perro; Conclusión: hay dos tipos de igualdad: de estado y de identidad.