PRINCIPIO DE LA
PROGRAMACIÓN
ORIENTADA A OBJETOS
MATERIA: PROGRAMACION VISUAL
PROF. ING GUILLERMINA RASGADO
ALUMNO: OLIVARES SALAZAR LIBERTAD ESMIRNA
NO. DE CONTROL 12230767
ING ELECTRONICA. 4TO SEMESTRE
QUÉ ES LA
PROGRAMACIÓN
ORIENTADA A OBJETOSOrganización de los programas de manera que representan
la interacción de las cosas en el mundo real.
Un programa consta de un conjunto de objetos.
Los objetos son abstracciones de cosas del mundo real.
Nos interesa qué se puede hacer con los objetos más que
cómo se hace.
Cada objeto es responsable de unas tareas.
Los objetos interactúan entre sí por medio de mensajes.
Cada objeto es un ejemplar de una clase.
Las clases se pueden organizar en una jerarquía de
herencia.
La programación OO es una simulación de un modelo del
PARADIGMA ORIENTADO
A OBJETOS
En el paradigma de la orientación a objeto,
un sistema se concibe como un conjunto de
objetos que se comunican entre si
mediante mensajes.
Objetos + Mensajes = Programa.
Mediante este modelo se construyen más
fácilmente sistemas complejos a partir de
componentes individuales.
¿QUÉ ES UN OBJETO?
Las personas tenemos una idea
clara de lo que es un objeto:
conceptos adquiridos que nos
permiten sentir y razonar acerca
de las cosas del mundo. Un
objeto podría ser real o
abstracto, por ejemplo una
organización, una factura, una
figura en un graficador, una
pantalla de usuario, un avión,
un vuelo de avión, una
reservación áerea.
SOFTWARE ORIENTADO
A OBJETOS
Dentro del software
orientado a objeto, un
objeto es cualquier cosa,
real o abstracta, acerca
de la cual almacenamos
datos y los métodos que
controlan dichos datos.
 Un objeto puede estar compuesto por otros objetos y
estos a su vez por otros más. Esta estructura nos
permite construir objetos muy complejos.
PROGRAMACIÓN ORIENTADA
A OBJETOS
La programación
orientada a objetos
(POO) encapsula datos
(atributos o
propiedades) y métodos
(comportamientos o
acciones) en objetos; de
esta manera los datos y
métodos de un objeto
están intimamente
relacionados entre sí.
CLASES Y OBJETOS
Una clase es una descripción generalizada de
un conjunto de objetos similares.
Es la descripción de un conjunto de objetos que
comparten los mismos atributos, operaciones,
relaciones y semántica.
Todos los objetos son ejemplares de una clase.
Un objeto es una instancia o variable de una
clase. Un objeto se distingue de otros
miembros de la clase por sus atributos.
EJEMPLO DE CLASES Y
OBJETOS
Clase:
Coche
 Objeto: Ferrari
EJEMPLO DE OBJETO CON
SUS MÉTODOS Y
PROPIEDADES
Propiedades o atributos
 Tipo de pantalla
 Espacio de memoria
 Cantidad de tonos
 Tipo de antena
 Cantidad de idiomas, etc.
Métodos o
comportamientos
 Iniciar alarma
 Asignar tonos
 Registrar llamadas
 Iniciar Juego
 Utilizar Calculadora
 Enviar mensajes, etc
Superclase: Teléfono
Clase: Teléfono Celular
Subclase: Teléfono Celular Digital
SUPERCLASES,
CLASES Y SUBCLASES
Una clase de alto nivel puede especializarse
en clases de bajo nivel. Es decir, un clase
puede tener subclases.
Por ejemplo, una clase Persona puede tener
subclases Estudiante y Empleado. A su vez,
la clase Estudiante puede tener como
subclase a Estudiante de pregrado y
Estudiante de postgrado, mientras que
Empleado puede tener como subclase a
Académico y Administrativo.
Existe de este modo una jerarquía de clases y
subclases.
CLASES Y
SUBCLASES
Clase
principal
Subclases
Las subclases
Fútbol, Rugby,
PingPong son
especializaciones
de la clase Pelota
MÉTODOS
Los métodos son comportamientos o
acciones, especifican la forma en que se
controlan los datos de un objeto. Los métodos
en un objeto sólo hacen referencia a la
estructura de datos de ese objeto, no deben
tener acceso directo a las estructuras de datos
de otros objetos. Para utilizar la estructura de
datos de otro objeto, deben enviar mensajes a
éste. Desde el punto de vista de la programación, los
métodos son funciones o procedimientos que
pueden ser llamadas dentro de una clase o por
otras clases.
MENSAJES Y MÉTODOS
En la programación orientada de objetos, la
acción se inicia mediante la transmisión de un
mensaje a un agente (un objeto) responsable
de la acción.
El mensaje tiene codificada la petición de una
acción y se acompaña de cualquier información
adicional (argumentos) necesaria para llevar a
cabo la petición. El receptor es el agente al
cual se envía el mensaje. Si el receptor acepta
el mensaje, acepta la responsabilidad de llevar
a cabo la acción indicada. En respuesta a un
mensaje, el receptor ejecutará algún método
ENCAPSULACIÓN
El encapsulado es el resultado
de ocultar los detalles de
implementación (estado interno)
de un objeto respecto de su
usuario.
El empaque conjunto de datos
y métodos se llama encapsulación.
El objeto esconde (protege) sus datos de los demás
objetos y permite el acceso a los datos mediante sus
propios métodos. Esto recibe el nombre de
ocultamiento de información y evita la corrupción de
los datos de un objeto.
Esto facilita el cambio (de implementación), mejora la
modularidad.
HERENCIA
La herencia es un mecanismo que permite
la definición de una clase a partir de la
definición de otra ya existente.
Es la característica clave de los sistemas
orientados a objeto para propiciar la
reusabilidad.
Una subclase puede heredar la estructura
de datos y los métodos, o algunos
métodos, de su superclase. También puede
tener métodos y tipos de datos propios.
HERENCIA
Una clase puede tener sus propios métodos y estructura de
datos, así como también heredarlos de su superclase.
PARA MODELAR
LAS RELACIONES DE
HERENCIA
Dado un conjunto de clases, hay que buscar atributos y
operaciones comunes a dos o más clases y elevar a una clase
más general.
Indicar que las clases más específicas heredan de la clase más
general a través de una relación de generalización desde cada
clase especializada a su padre.
POLIMORFISMO
Polimorfismo se aplica a métodos que adoptan varias
formas de implementación según el tipo de objeto,
pero cumple siempre el mismo objetivo.
Los métodos son polimórficos si se aplican a objetos
de distintas clases para conseguir el mismo significado
semántico. Por ejemplo, lanzar puede ser
implementado tanto para un objeto Tenis como para el
objeto Béisbol o Fútbol.
Una de las ventajas del polimorfismo es que se puede
hacer una solicitud de una operación sin conocer el
método que será llamado, es decir, existe un enlace
tardío entre el mensaje y el método.
Método área, en una clase Figura, y subclases Cuadrado y
Rectángulo.
ABSTRACCIÓN
Es el conocimiento que se tiene de una cosa
prescindiendo de las demás que están con
ella.
La abstracción localiza y oculta los detalles
de un modelo o diseño para generar y
manipular objetos.
Conocemos un objeto viéndolo, sabemos
qué es sin necesidad de ver su interior, su
implementación o su forma de construcción.
TIPOS DE DATOS
ABSTRACTOS
Los tipos de datos abstractos (TDA) permiten describir
una estructura de datos en función a las operaciones
que pueden efectuar, dejando a un lado su
implementación.
Los TDA mezclan estructuras de datos junto a una
serie de operaciones de manipulación. Incluyen una
interfaz pública, que es lo que verá el usuario, y una
implementación (algoritmos de operaciones sobre las
estructuras de datos y su representación en un
lenguaje de programación), que el usuario no tiene
necesariamente que conocer para manipular
correctamente los tipos de datos abstractos.
Los objetos están representados por medio de los
CONSEJOS PRÁCTICOS
PARA LA ABSTRACCIÓN
Identificar los objetos principales.
Definir propiedades y métodos principales de cada objeto.
Clasificar los objetos según sus semejanzas/diferencias.
Establecer cómo se relacionan entre sí, cómo se comunican
(eventos)..
CLASES ABSTRACTAS
Una clase abstracta es una descripción
incompleta de un objeto. Un conjunto de
operaciones y atributos que por sí solos no
describen nada.
Las clases abstractas no pueden ser
instanciadas, no es posible crear objetos o
variables (no se puede usar new).
Creadas por generalización, tienen
características comunes, pero no completas.
Son utilizadas para definir operaciones
comunes y aplicar polimorfismo.
RESUMEN DE
CONCEPTOS DE POO
Un programa orientado a objetos es un conjunto de
clases que describe el comportamiento de los objetos
del sistema
Los objetos se comunican mediante mensajes
Cada objeto tiene su propio estado, que consta de
otros objetos
Cada objeto es un ejemplar de una clase (agrupación
de
objetos)
Todos los objetos que son ejemplares de una misma
clase
pueden realizar las mismas acciones
Clases
Objetos
Instancias de
Propie-
dades
Métodos
Herencia
Polimorfismo
Encapsu-
lación
Abstracción
Tipos de datos
abstractos
tienen
son
Estructura de grandes
programas
Conceptos básicos sobre
programación orientada a objetos

Conceptos poo progra visual

  • 1.
    PRINCIPIO DE LA PROGRAMACIÓN ORIENTADAA OBJETOS MATERIA: PROGRAMACION VISUAL PROF. ING GUILLERMINA RASGADO ALUMNO: OLIVARES SALAZAR LIBERTAD ESMIRNA NO. DE CONTROL 12230767 ING ELECTRONICA. 4TO SEMESTRE
  • 2.
    QUÉ ES LA PROGRAMACIÓN ORIENTADAA OBJETOSOrganización de los programas de manera que representan la interacción de las cosas en el mundo real. Un programa consta de un conjunto de objetos. Los objetos son abstracciones de cosas del mundo real. Nos interesa qué se puede hacer con los objetos más que cómo se hace. Cada objeto es responsable de unas tareas. Los objetos interactúan entre sí por medio de mensajes. Cada objeto es un ejemplar de una clase. Las clases se pueden organizar en una jerarquía de herencia. La programación OO es una simulación de un modelo del
  • 3.
    PARADIGMA ORIENTADO A OBJETOS Enel paradigma de la orientación a objeto, un sistema se concibe como un conjunto de objetos que se comunican entre si mediante mensajes. Objetos + Mensajes = Programa. Mediante este modelo se construyen más fácilmente sistemas complejos a partir de componentes individuales.
  • 4.
    ¿QUÉ ES UNOBJETO? Las personas tenemos una idea clara de lo que es un objeto: conceptos adquiridos que nos permiten sentir y razonar acerca de las cosas del mundo. Un objeto podría ser real o abstracto, por ejemplo una organización, una factura, una figura en un graficador, una pantalla de usuario, un avión, un vuelo de avión, una reservación áerea.
  • 5.
    SOFTWARE ORIENTADO A OBJETOS Dentrodel software orientado a objeto, un objeto es cualquier cosa, real o abstracta, acerca de la cual almacenamos datos y los métodos que controlan dichos datos.  Un objeto puede estar compuesto por otros objetos y estos a su vez por otros más. Esta estructura nos permite construir objetos muy complejos.
  • 6.
    PROGRAMACIÓN ORIENTADA A OBJETOS Laprogramación orientada a objetos (POO) encapsula datos (atributos o propiedades) y métodos (comportamientos o acciones) en objetos; de esta manera los datos y métodos de un objeto están intimamente relacionados entre sí.
  • 7.
    CLASES Y OBJETOS Unaclase es una descripción generalizada de un conjunto de objetos similares. Es la descripción de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica. Todos los objetos son ejemplares de una clase. Un objeto es una instancia o variable de una clase. Un objeto se distingue de otros miembros de la clase por sus atributos.
  • 8.
    EJEMPLO DE CLASESY OBJETOS Clase: Coche  Objeto: Ferrari
  • 9.
    EJEMPLO DE OBJETOCON SUS MÉTODOS Y PROPIEDADES Propiedades o atributos  Tipo de pantalla  Espacio de memoria  Cantidad de tonos  Tipo de antena  Cantidad de idiomas, etc. Métodos o comportamientos  Iniciar alarma  Asignar tonos  Registrar llamadas  Iniciar Juego  Utilizar Calculadora  Enviar mensajes, etc Superclase: Teléfono Clase: Teléfono Celular Subclase: Teléfono Celular Digital
  • 10.
    SUPERCLASES, CLASES Y SUBCLASES Unaclase de alto nivel puede especializarse en clases de bajo nivel. Es decir, un clase puede tener subclases. Por ejemplo, una clase Persona puede tener subclases Estudiante y Empleado. A su vez, la clase Estudiante puede tener como subclase a Estudiante de pregrado y Estudiante de postgrado, mientras que Empleado puede tener como subclase a Académico y Administrativo. Existe de este modo una jerarquía de clases y subclases.
  • 11.
    CLASES Y SUBCLASES Clase principal Subclases Las subclases Fútbol,Rugby, PingPong son especializaciones de la clase Pelota
  • 12.
    MÉTODOS Los métodos soncomportamientos o acciones, especifican la forma en que se controlan los datos de un objeto. Los métodos en un objeto sólo hacen referencia a la estructura de datos de ese objeto, no deben tener acceso directo a las estructuras de datos de otros objetos. Para utilizar la estructura de datos de otro objeto, deben enviar mensajes a éste. Desde el punto de vista de la programación, los métodos son funciones o procedimientos que pueden ser llamadas dentro de una clase o por otras clases.
  • 13.
    MENSAJES Y MÉTODOS Enla programación orientada de objetos, la acción se inicia mediante la transmisión de un mensaje a un agente (un objeto) responsable de la acción. El mensaje tiene codificada la petición de una acción y se acompaña de cualquier información adicional (argumentos) necesaria para llevar a cabo la petición. El receptor es el agente al cual se envía el mensaje. Si el receptor acepta el mensaje, acepta la responsabilidad de llevar a cabo la acción indicada. En respuesta a un mensaje, el receptor ejecutará algún método
  • 14.
    ENCAPSULACIÓN El encapsulado esel resultado de ocultar los detalles de implementación (estado interno) de un objeto respecto de su usuario. El empaque conjunto de datos y métodos se llama encapsulación. El objeto esconde (protege) sus datos de los demás objetos y permite el acceso a los datos mediante sus propios métodos. Esto recibe el nombre de ocultamiento de información y evita la corrupción de los datos de un objeto. Esto facilita el cambio (de implementación), mejora la modularidad.
  • 15.
    HERENCIA La herencia esun mecanismo que permite la definición de una clase a partir de la definición de otra ya existente. Es la característica clave de los sistemas orientados a objeto para propiciar la reusabilidad. Una subclase puede heredar la estructura de datos y los métodos, o algunos métodos, de su superclase. También puede tener métodos y tipos de datos propios.
  • 16.
    HERENCIA Una clase puedetener sus propios métodos y estructura de datos, así como también heredarlos de su superclase.
  • 17.
    PARA MODELAR LAS RELACIONESDE HERENCIA Dado un conjunto de clases, hay que buscar atributos y operaciones comunes a dos o más clases y elevar a una clase más general. Indicar que las clases más específicas heredan de la clase más general a través de una relación de generalización desde cada clase especializada a su padre.
  • 18.
    POLIMORFISMO Polimorfismo se aplicaa métodos que adoptan varias formas de implementación según el tipo de objeto, pero cumple siempre el mismo objetivo. Los métodos son polimórficos si se aplican a objetos de distintas clases para conseguir el mismo significado semántico. Por ejemplo, lanzar puede ser implementado tanto para un objeto Tenis como para el objeto Béisbol o Fútbol. Una de las ventajas del polimorfismo es que se puede hacer una solicitud de una operación sin conocer el método que será llamado, es decir, existe un enlace tardío entre el mensaje y el método. Método área, en una clase Figura, y subclases Cuadrado y Rectángulo.
  • 19.
    ABSTRACCIÓN Es el conocimientoque se tiene de una cosa prescindiendo de las demás que están con ella. La abstracción localiza y oculta los detalles de un modelo o diseño para generar y manipular objetos. Conocemos un objeto viéndolo, sabemos qué es sin necesidad de ver su interior, su implementación o su forma de construcción.
  • 20.
    TIPOS DE DATOS ABSTRACTOS Lostipos de datos abstractos (TDA) permiten describir una estructura de datos en función a las operaciones que pueden efectuar, dejando a un lado su implementación. Los TDA mezclan estructuras de datos junto a una serie de operaciones de manipulación. Incluyen una interfaz pública, que es lo que verá el usuario, y una implementación (algoritmos de operaciones sobre las estructuras de datos y su representación en un lenguaje de programación), que el usuario no tiene necesariamente que conocer para manipular correctamente los tipos de datos abstractos. Los objetos están representados por medio de los
  • 21.
    CONSEJOS PRÁCTICOS PARA LAABSTRACCIÓN Identificar los objetos principales. Definir propiedades y métodos principales de cada objeto. Clasificar los objetos según sus semejanzas/diferencias. Establecer cómo se relacionan entre sí, cómo se comunican (eventos)..
  • 22.
    CLASES ABSTRACTAS Una claseabstracta es una descripción incompleta de un objeto. Un conjunto de operaciones y atributos que por sí solos no describen nada. Las clases abstractas no pueden ser instanciadas, no es posible crear objetos o variables (no se puede usar new). Creadas por generalización, tienen características comunes, pero no completas. Son utilizadas para definir operaciones comunes y aplicar polimorfismo.
  • 23.
    RESUMEN DE CONCEPTOS DEPOO Un programa orientado a objetos es un conjunto de clases que describe el comportamiento de los objetos del sistema Los objetos se comunican mediante mensajes Cada objeto tiene su propio estado, que consta de otros objetos Cada objeto es un ejemplar de una clase (agrupación de objetos) Todos los objetos que son ejemplares de una misma clase pueden realizar las mismas acciones
  • 24.
    Clases Objetos Instancias de Propie- dades Métodos Herencia Polimorfismo Encapsu- lación Abstracción Tipos dedatos abstractos tienen son Estructura de grandes programas Conceptos básicos sobre programación orientada a objetos