SlideShare una empresa de Scribd logo
1 de 26
REPÚBLICA BOLIVARIANA DE VENEZUELA.
UNIVERSIDAD PEDAGÓGICA EXPERIMENTAL LIBERTADOR.
INSTITUTO DE MEJORAMIENTO PROFESIONAL DEL MAGISTERIO
EXTENSIÓN ACADÉMICA PARAGUANÁ.
CÁTEDRA: ESTRUCTURA DE DATOS Y PROGRAMACION III
TUTOR: RAMÓN LÓPEZ.
REALIZADO POR:
ANGEL AMAYA
C.I: 19.879.742
La programación orientada a objetos no debe confundirse con un lenguaje
programación orientado a objetos. En la programación convencional los
programas se dividen en dos componentes: Procedimientos y Datos. Las
estructuras de datos utilizadas en programación son globales o se pasan como
parámetros. En esencia los datos se tratan separadamente de los
procedimientos. En la programación orientada a objetos se combinan los datos y
los procedimientos en una entidad única.
La POO es un paradigma, es otra forma de pensar , es una filosofía única a
diferencia de un Lenguaje de Programación Orientado a Objetos el cual existen
muchos y permiten hacer uso de ese paradigma con el animo de solucionar
problemas reales mediante la abstracción de los diferentes agentes, entidades o
elementos que actúan en el planteamiento de un problema. Podemos decir
también, que este paradigma es una disciplina de diseño de software que facilita
la construcción de sistemas a través de componentes individuales llamados
clases de objetos.
ELEMENTO DESCRIPCION
Persona Tiene sus propios atributos: Color piel, Altura, genero, Color ojos, Cabello, etc. Y tiene
un comportamiento: Ver , escuchar, hablar, etc.
Control
Remoto
Tiene sus propios atributos: Tamaño, color, tipo, batería, etc. Y tiene un
comportamiento: Enviar señal, codificar señal, cambiar canal, aumentar volumen,
ingresar a menú, prender TV etc.
Televisor Tiene sus propios atributos: pulgadas, tipo, numero parlantes, marca , etc. Y tiene un
comportamiento: Decodificar señal, prender, apagar, emitir señal, emitir audio, etc.
• En el problema planteado se especifican 3 elementos involucrados.
Cada elemento posee sus propias características y sus propios
comportamientos. En POO a estos elementos se les conoce bajo el
nombre de OBJETOS.
• En POO a las características que identifican a cada objeto se le
denominan ATRIBUTOS y a los comportamientos se les denominan
METODOS.
ELEMENTO DESCRIPCION
Persona Tiene sus propios atributos: Color piel, Altura, genero, Color ojos, Cabello, etc. Y tiene
un comportamiento: Ver , escuchar, hablar, etc.
Control
Remoto
Tiene sus propios atributos: Tamaño, color, tipo, batería, etc. Y tiene un
comportamiento: Enviar señal, codificar señal, cambiar canal, aumentar volumen,
ingresar a menú, prender TV etc.
Televisor Tiene sus propios atributos: pulgadas, tipo, numero parlantes, marca , etc. Y tiene un
comportamiento: Decodificar señal, prender, apagar, emitir señal, emitir audio, etc.
ELEMENTOS EN LA
POO
En la programación orientada a objetos un programa se divide en
componentes que contienen procedimientos y datos. Cada
componente se considera un objeto. En otras palabras un objeto
es una unidad que contiene datos y las funciones que operan
sobre esos datos.
• Es una instancia de una clase. Por lo tanto, los objetos hacen uso
de los Atributos (variables) y Métodos (Funciones y
Procedimientos) de su correspondiente Clase.
• Es una variable de tipo clase. Por ejemplo: El objeto «Cesar» es
un objeto de tipo Clase: Persona.
• Permiten modelar entidades del mundo real. Por ejemplo: LCD
LG pertenece a la clase Televisor. Resumiendo la clase televisor
seria:
Tipo. De tipo cadena.
Resolución. De tipo cadena
Marca. De tipo cadena.
Emitir_Señal ( )
Emitir_Audio ( )
Decodificar_Señal (señal_entrada)
METODOS
ATRIBUTOS
• Como se puede observar un objeto a través de su clase esta
compuesto por 2 partes: Atributos o propiedades y Métodos
que definen el comportamiento de dicho objetos a partir de sus
atributos.
• Los atributos y los métodos pueden ser o no accedidos desde
afuera dependiendo de la solución a plantear. Por lo general
los atributos siempre se ocultan al exterior y algunos métodos
quedan visibles al exterior para convertirse en la interfaz del
objeto. Encapsulamiento.
Tipo. De tipo cadena.
Resolución. De tipo cadena
Marca. De tipo cadena.
Emitir_Señal ( )
Emitir_Audio ( )
Decodificar_Señal (señal_entrada)
METODOS
ATRIBUTOS
La primera tarea a la que se enfrenta un diseñador o programador
en POO es la identificación e los objetos inmersos en el problema a
solucionar.
Los objetos generalmente se ubican en las siguientes categorías:
• Cosas Tangibles: Avión, auto, producto, insumo.
• Roles : gerente, cliente, vendedor, auxiliar, empleado.
• Organizaciones o entidades: Empresa, colegio,
proveedor, EPS.
• Cosas intangibles: Vuelos, Servicios, Materias,
programas.
Una CLASE es un tipo de dato definido por el usuario que determina las
estructuras de datos y las operaciones asociadas con ese tipo. Las clases son las
definiciones de las propiedades y comportamiento de un tipo de objeto concreto.
La instanciación es la lectura de estas definiciones y la creación de un objeto a
partir de ellas. Cada vez que se construye un objeto de una clase, se crea una
instancia de esa clase. En general, los términos objetos e instancias de una clase
se pueden utilizar indistintamente.
«Una CLASE es una plantilla mediante la cual se crean los diferentes objetos
requeridos para la solución del problema. Los Objetos son instancias de las
clases».
Las clases son a los objetos como los tipos de datos son a las variables.
• Ejemplo: Se puede crear un objeto llamado Cesar. Este objeto es creado a
partir de la clase «Persona». Se puede crear otro objeto llamado: Patricia el
cual pertenece a la clase «Persona». Significa que a partir de la clase se
pueden crear los objetos que se deseen.
• Ejemplo: Se puede crear un objeto llamado LCD LG, el cual pertenece a la
clase: Televisor.
DEFINICIÓN DE
CLASE
OTRO EJEMPLO: Se pretende modelar un objeto llamado «CARRO»
el cual existe en el mundo real.
• Este objeto tiene unos atributos o variables: Vel_Max, Color,
No_chasis, No_puertas, No_llantas, tipo.
• Unos comportamientos y métodos: Acelerar (velocidad), Frenar
(velocidad), mover_cambio (No_cambio)…
Vel_max. De tipo decimal.
Color. De tipo cadena.
No_chasis. De tipo cadena.
No_puertas. De tipo entero.
No_llantas. De tipo entero.
Acelerar (Velocidad)
Frenar (Velocidad)
Mover_cambio (No_cambio)
Girar_derecha ( )
Girar_izquierda ( )
METODOS
ATRIBUTOS
CLASE CARRO
Las clases no se construyen para que trabajen de manera
aislada, la idea es que ellas se puedan relacionar entre sí, de
manera que puedan compartir atributos y métodos sin
necesidad de rescribirlos.
La posibilidad de establecer jerarquías entre las clases es una
característica que diferencia esencialmente la programación
orientada a objetos de la programación tradicional, ello debido
fundamentalmente a que permite extender y reutilizar el código
existente sin tener que rescribirlo cada vez que se necesite.
Los cuatro tipos de relaciones entre clases son:
• RELACIÓN DE HERENCIA
• RELACIÓN DE AGREGACIÓN
• RELACIÓN DE COMPOSICIÓN
• RELACIÓN DE ASOCIACIÓN
Es un tipo de jerarquía de clases, en la que cada subclase
contiene los atributos y métodos de una (herencia simple) o más
superclases (herencia múltiple).
Mediante la herencia las instancias de una clase hija (o
subclase) pueden acceder tanto a los atributos como a los
métodos públicos y protegidos de la clase padre (o superclase).
Cada subclase o clase hija en la jerarquía es siempre una
extensión (esto es, conjunto estrictamente más grande) de la(s)
superclase(s) o clase(s) padre(s) y además incorporar atributos
y métodos propios, que a su vez serán heredados por sus hijas.
Representación:
• En la notación algorítmica: Se coloca el nombre de la
clase padre después de la frase Hereda de del
encabezado de la clase y se usan sus atributos y
métodos públicos o protegidos. Ejemplo: Clase Punto3D
Hereda de Punto2D.
• En el diagrama de clases: La herencia se representa
mediante una relación de generalización/especificación,
que se denota de la siguiente forma:
Es una relación que representa a los objetos compuestos por
otros objetos. Indica Objetos que a su vez están formados por
otros. El objeto en el nivel superior de la jerarquía es el todo y
los que están en los niveles inferiores son sus partes o
componentes.
Representación en el Diagrama de Clase: La relación forma
parte de, no es más que una asociación, que se denota:
Si motor forma parte de carro, la flecha apunta a la clase motor,
y el diamante va pegado a carro. La multiplicidad es el rango
de cardinalidad permitido que puede asumir la asociación, se
denota LI..LS. Se puede usar * en el limite superior para
representar una cantidad ilimitada (ejemplo: 3..*).
Un componente es parte esencial de un elemento. La
relación es más fuerte que el caso de agregación, al punto
que si el componente es eliminado o desaparece, la clase
mayor deja de existir.
Representación en el Diagrama de Clases
La relación de composición, se denota de la siguiente
forma:
Es una asociación que se establece cuando dos clases tienen
una dependencia de utilización, es decir, una clase utiliza
atributos y/o métodos de otra para funcionar. Estas dos clases
no necesariamente están en jerarquía, es decir, no
necesariamente una es clase padre de la otra, a diferencia de
las otras relaciones de clases.
El ejemplo mas común de esta relación es de objetos que son
utilizados por los humanos para alguna función, como Lápiz (se
usa para escribir), tenedor (se usa para comer), silla (se usa
para sentarse), etc. Otro ejemplo son los objetos Cajero y
Cuenta.
El Cajero “usa a” la cuenta para hacer las transacciones de
consulta y retiro y verificar la información del usuario.
Representación en el Diagrama de Clases
La relación de uso, se denota con una dependencia
estereotipada:
Ejemplos:
ABSTRACCIÓN.
ENCAPSULAMIEN
TO.
MENSAJES.
POLIMORFISMO.
Es el principio de ignorar aquellos aspectos de un fenómeno
observado que no son relevantes, con el objetivo de concentrarse en
aquellos que si lo son.
Una abstracción denota las características esenciales de un objeto (datos y
operaciones), que lo distingue de otras clases de objetos. Decidir el conjunto
correcto de abstracciones de un determinado dominio, es el problema
central del diseño orientado a objetos. Los mecanismos de abstracción son
usados en el EOO para extraer y definir del medio a modelar, sus
características y su comportamiento.
• Es una de las principales características a tener en cuenta ya que
permite vislumbrar los diferentes agentes u objetos implicados en un
problema.
• Captar los atributos y métodos que conforman cada objeto y la
relación que existen entre ellos.
• Resolver el problema en subproblemas donde cada objeto se haga
cargo de cada subproblema.
• La comunicación entre objetos generan la solución general a todo el
problema. (Divide y vencerás).
Es la propiedad del EOO que permite ocultar al mundo exterior la
representación interna del objeto. Esto quiere decir que el objeto puede
ser utilizado, pero los datos esenciales del mismo no son conocidos
fuera de él.
La idea central del encapsulamiento es esconder los detalles y mostrar lo
relevante. Permite el ocultamiento de la información separando el aspecto
correspondiente a la especificación de la implementación; de esta forma,
distingue el "qué hacer" del "cómo hacer". La especificación es visible al
usuario, mientras que la implementación se le oculta.
El encapsulamiento en un sistema orientado a objeto se representa en cada
clase u objeto, definiendo sus atributos y métodos con los siguientes modos
de acceso:
• Público (+) Atributos o Métodos que son accesibles fuera de la clase.
Pueden ser llamados por cualquier clase, aun si no está relacionada con
ella.
• Privado (-) Atributos o Métodos que solo son accesibles dentro de la
implementación de la clase.
• Protegido (#): Atributos o Métodos que son accesibles para la propia
clase y sus clases hijas (subclases).
Los atributos y los métodos que son públicos constituyen la interfaz de la
clase, es decir, lo que el mundo exterior conoce de la misma.
• Un objeto sin comunicación con el mundo exterior no es de utilidad. La idea no
es crear islas de objetos si no objetos relacionados.
• Los objetos interactúan entre ellos mediante mensajes.
• Cuando un objeto A quiere que otro objeto B ejecute una de sus funciones
o procedimientos miembro (Métodos de B), el objeto A manda un mensaje
al objeto B.
Llevar ( TV )
•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV
Entregar ( )
Persona Técnico
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)
Ejemplo: Una persona desea llevar su televisor descompuesto para que sea
arreglado por un técnico.
Es una propiedad del EOO que permite que un método tenga múltiples
implementaciones, que se seleccionan en base al tipo objeto indicado al solicitar
la ejecución del método.
El polimorfismo operacional o Sobrecarga operacional permite aplicar operaciones
con igual nombre a diferentes clases o están relacionados en términos de inclusión. En
este tipo de polimorfismo, los métodos son interpretados en el contexto del objeto
particular, ya que los métodos con nombres comunes son implementados de diferente
manera dependiendo de cada clase.
Objeto 2
function Sumar (a,b)
Sumar = a + b
End Function
Objeto 1
Objeto2.sumar (a,b)
Objeto3.sumar
(a,b,c)
Objeto 3
function Sumar (a,b,c)
Sumar = a + b + c
End Function
El objeto 1 invoca a dos métodos que
llevan el mismo nombre, pero funcionan
diferente en cada objeto.
Unidad 1 Programación Orientada a Objetos (Programación III)

Más contenido relacionado

La actualidad más candente

Almacenamiento secundario
Almacenamiento secundarioAlmacenamiento secundario
Almacenamiento secundarioIván Torres
 
Kernel De Windows
Kernel De WindowsKernel De Windows
Kernel De Windowseyes
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsslipkdany21
 
Introducción a los Sistemas Operativos
Introducción a los Sistemas OperativosIntroducción a los Sistemas Operativos
Introducción a los Sistemas OperativosGabriela
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Arquitectura de los sistemas operativos
Arquitectura de los sistemas operativosArquitectura de los sistemas operativos
Arquitectura de los sistemas operativosfresjunior
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosGuillermo Chirinos
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y desplieguejoshell
 
Articulo correo pros y contras correos electronicos
Articulo correo pros y contras correos electronicosArticulo correo pros y contras correos electronicos
Articulo correo pros y contras correos electronicosRoberto Almena
 
Sistemas operativos mapa mental
Sistemas operativos mapa mentalSistemas operativos mapa mental
Sistemas operativos mapa mentaljuliana bello
 

La actualidad más candente (20)

Almacenamiento secundario
Almacenamiento secundarioAlmacenamiento secundario
Almacenamiento secundario
 
Kernel De Windows
Kernel De WindowsKernel De Windows
Kernel De Windows
 
Herencia y polimorfismo
Herencia y polimorfismoHerencia y polimorfismo
Herencia y polimorfismo
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windows
 
Introducción a los Sistemas Operativos
Introducción a los Sistemas OperativosIntroducción a los Sistemas Operativos
Introducción a los Sistemas Operativos
 
Procesos
ProcesosProcesos
Procesos
 
Windows Phone
Windows PhoneWindows Phone
Windows Phone
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Taller de Base de Datos - Unidad 5 transacciones
Taller de Base de Datos - Unidad 5  transaccionesTaller de Base de Datos - Unidad 5  transacciones
Taller de Base de Datos - Unidad 5 transacciones
 
Arquitectura de los sistemas operativos
Arquitectura de los sistemas operativosArquitectura de los sistemas operativos
Arquitectura de los sistemas operativos
 
Encapsulamiento poo
Encapsulamiento pooEncapsulamiento poo
Encapsulamiento poo
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De Datos
 
Multiprocesamiento
MultiprocesamientoMultiprocesamiento
Multiprocesamiento
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Presentación poo
Presentación pooPresentación poo
Presentación poo
 
Java
JavaJava
Java
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegue
 
Articulo correo pros y contras correos electronicos
Articulo correo pros y contras correos electronicosArticulo correo pros y contras correos electronicos
Articulo correo pros y contras correos electronicos
 
Sistemas operativos mapa mental
Sistemas operativos mapa mentalSistemas operativos mapa mental
Sistemas operativos mapa mental
 

Similar a Unidad 1 Programación Orientada a Objetos (Programación III)

Similar a Unidad 1 Programación Orientada a Objetos (Programación III) (20)

Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos clases
Primeraclaseobjetos clasesPrimeraclaseobjetos clases
Primeraclaseobjetos clases
 
Programación i 1. diseño orientado a objetos
Programación i 1. diseño orientado a objetosProgramación i 1. diseño orientado a objetos
Programación i 1. diseño orientado a objetos
 
Programacion
ProgramacionProgramacion
Programacion
 
Unidad1 y 2
Unidad1 y 2Unidad1 y 2
Unidad1 y 2
 
Programacion orientada
Programacion orientadaProgramacion orientada
Programacion orientada
 
Terminologia de la POO
Terminologia de la POOTerminologia de la POO
Terminologia de la POO
 
Elemtos de programacion
Elemtos de programacionElemtos de programacion
Elemtos de programacion
 
Rsw investigacion
Rsw investigacionRsw investigacion
Rsw investigacion
 
Trabajo sistemas digitales
Trabajo sistemas digitalesTrabajo sistemas digitales
Trabajo sistemas digitales
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Programación orientada a objetos
Programación orientada a objetos Programación orientada a objetos
Programación orientada a objetos
 
Clase2212
Clase2212Clase2212
Clase2212
 
3_Orientación a objeto
3_Orientación a objeto3_Orientación a objeto
3_Orientación a objeto
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETO
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Cap3.0
Cap3.0Cap3.0
Cap3.0
 
Programación orientada a objeto (autoguardado) 1
Programación orientada a objeto (autoguardado) 1Programación orientada a objeto (autoguardado) 1
Programación orientada a objeto (autoguardado) 1
 

Último

programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
CULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirCULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirPaddySydney1
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaJuan Carlos Fonseca Mata
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 

Último (20)

Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
CULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirCULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartir
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - Botánica
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 

Unidad 1 Programación Orientada a Objetos (Programación III)

  • 1. REPÚBLICA BOLIVARIANA DE VENEZUELA. UNIVERSIDAD PEDAGÓGICA EXPERIMENTAL LIBERTADOR. INSTITUTO DE MEJORAMIENTO PROFESIONAL DEL MAGISTERIO EXTENSIÓN ACADÉMICA PARAGUANÁ. CÁTEDRA: ESTRUCTURA DE DATOS Y PROGRAMACION III TUTOR: RAMÓN LÓPEZ. REALIZADO POR: ANGEL AMAYA C.I: 19.879.742
  • 2. La programación orientada a objetos no debe confundirse con un lenguaje programación orientado a objetos. En la programación convencional los programas se dividen en dos componentes: Procedimientos y Datos. Las estructuras de datos utilizadas en programación son globales o se pasan como parámetros. En esencia los datos se tratan separadamente de los procedimientos. En la programación orientada a objetos se combinan los datos y los procedimientos en una entidad única. La POO es un paradigma, es otra forma de pensar , es una filosofía única a diferencia de un Lenguaje de Programación Orientado a Objetos el cual existen muchos y permiten hacer uso de ese paradigma con el animo de solucionar problemas reales mediante la abstracción de los diferentes agentes, entidades o elementos que actúan en el planteamiento de un problema. Podemos decir también, que este paradigma es una disciplina de diseño de software que facilita la construcción de sistemas a través de componentes individuales llamados clases de objetos.
  • 3. ELEMENTO DESCRIPCION Persona Tiene sus propios atributos: Color piel, Altura, genero, Color ojos, Cabello, etc. Y tiene un comportamiento: Ver , escuchar, hablar, etc. Control Remoto Tiene sus propios atributos: Tamaño, color, tipo, batería, etc. Y tiene un comportamiento: Enviar señal, codificar señal, cambiar canal, aumentar volumen, ingresar a menú, prender TV etc. Televisor Tiene sus propios atributos: pulgadas, tipo, numero parlantes, marca , etc. Y tiene un comportamiento: Decodificar señal, prender, apagar, emitir señal, emitir audio, etc.
  • 4. • En el problema planteado se especifican 3 elementos involucrados. Cada elemento posee sus propias características y sus propios comportamientos. En POO a estos elementos se les conoce bajo el nombre de OBJETOS. • En POO a las características que identifican a cada objeto se le denominan ATRIBUTOS y a los comportamientos se les denominan METODOS. ELEMENTO DESCRIPCION Persona Tiene sus propios atributos: Color piel, Altura, genero, Color ojos, Cabello, etc. Y tiene un comportamiento: Ver , escuchar, hablar, etc. Control Remoto Tiene sus propios atributos: Tamaño, color, tipo, batería, etc. Y tiene un comportamiento: Enviar señal, codificar señal, cambiar canal, aumentar volumen, ingresar a menú, prender TV etc. Televisor Tiene sus propios atributos: pulgadas, tipo, numero parlantes, marca , etc. Y tiene un comportamiento: Decodificar señal, prender, apagar, emitir señal, emitir audio, etc. ELEMENTOS EN LA POO
  • 5. En la programación orientada a objetos un programa se divide en componentes que contienen procedimientos y datos. Cada componente se considera un objeto. En otras palabras un objeto es una unidad que contiene datos y las funciones que operan sobre esos datos. • Es una instancia de una clase. Por lo tanto, los objetos hacen uso de los Atributos (variables) y Métodos (Funciones y Procedimientos) de su correspondiente Clase. • Es una variable de tipo clase. Por ejemplo: El objeto «Cesar» es un objeto de tipo Clase: Persona. • Permiten modelar entidades del mundo real. Por ejemplo: LCD LG pertenece a la clase Televisor. Resumiendo la clase televisor seria: Tipo. De tipo cadena. Resolución. De tipo cadena Marca. De tipo cadena. Emitir_Señal ( ) Emitir_Audio ( ) Decodificar_Señal (señal_entrada) METODOS ATRIBUTOS
  • 6. • Como se puede observar un objeto a través de su clase esta compuesto por 2 partes: Atributos o propiedades y Métodos que definen el comportamiento de dicho objetos a partir de sus atributos. • Los atributos y los métodos pueden ser o no accedidos desde afuera dependiendo de la solución a plantear. Por lo general los atributos siempre se ocultan al exterior y algunos métodos quedan visibles al exterior para convertirse en la interfaz del objeto. Encapsulamiento. Tipo. De tipo cadena. Resolución. De tipo cadena Marca. De tipo cadena. Emitir_Señal ( ) Emitir_Audio ( ) Decodificar_Señal (señal_entrada) METODOS ATRIBUTOS
  • 7. La primera tarea a la que se enfrenta un diseñador o programador en POO es la identificación e los objetos inmersos en el problema a solucionar. Los objetos generalmente se ubican en las siguientes categorías: • Cosas Tangibles: Avión, auto, producto, insumo. • Roles : gerente, cliente, vendedor, auxiliar, empleado. • Organizaciones o entidades: Empresa, colegio, proveedor, EPS. • Cosas intangibles: Vuelos, Servicios, Materias, programas.
  • 8. Una CLASE es un tipo de dato definido por el usuario que determina las estructuras de datos y las operaciones asociadas con ese tipo. Las clases son las definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ellas. Cada vez que se construye un objeto de una clase, se crea una instancia de esa clase. En general, los términos objetos e instancias de una clase se pueden utilizar indistintamente. «Una CLASE es una plantilla mediante la cual se crean los diferentes objetos requeridos para la solución del problema. Los Objetos son instancias de las clases». Las clases son a los objetos como los tipos de datos son a las variables. • Ejemplo: Se puede crear un objeto llamado Cesar. Este objeto es creado a partir de la clase «Persona». Se puede crear otro objeto llamado: Patricia el cual pertenece a la clase «Persona». Significa que a partir de la clase se pueden crear los objetos que se deseen. • Ejemplo: Se puede crear un objeto llamado LCD LG, el cual pertenece a la clase: Televisor. DEFINICIÓN DE CLASE
  • 9.
  • 10.
  • 11. OTRO EJEMPLO: Se pretende modelar un objeto llamado «CARRO» el cual existe en el mundo real. • Este objeto tiene unos atributos o variables: Vel_Max, Color, No_chasis, No_puertas, No_llantas, tipo. • Unos comportamientos y métodos: Acelerar (velocidad), Frenar (velocidad), mover_cambio (No_cambio)… Vel_max. De tipo decimal. Color. De tipo cadena. No_chasis. De tipo cadena. No_puertas. De tipo entero. No_llantas. De tipo entero. Acelerar (Velocidad) Frenar (Velocidad) Mover_cambio (No_cambio) Girar_derecha ( ) Girar_izquierda ( ) METODOS ATRIBUTOS CLASE CARRO
  • 12. Las clases no se construyen para que trabajen de manera aislada, la idea es que ellas se puedan relacionar entre sí, de manera que puedan compartir atributos y métodos sin necesidad de rescribirlos. La posibilidad de establecer jerarquías entre las clases es una característica que diferencia esencialmente la programación orientada a objetos de la programación tradicional, ello debido fundamentalmente a que permite extender y reutilizar el código existente sin tener que rescribirlo cada vez que se necesite. Los cuatro tipos de relaciones entre clases son: • RELACIÓN DE HERENCIA • RELACIÓN DE AGREGACIÓN • RELACIÓN DE COMPOSICIÓN • RELACIÓN DE ASOCIACIÓN
  • 13. Es un tipo de jerarquía de clases, en la que cada subclase contiene los atributos y métodos de una (herencia simple) o más superclases (herencia múltiple). Mediante la herencia las instancias de una clase hija (o subclase) pueden acceder tanto a los atributos como a los métodos públicos y protegidos de la clase padre (o superclase). Cada subclase o clase hija en la jerarquía es siempre una extensión (esto es, conjunto estrictamente más grande) de la(s) superclase(s) o clase(s) padre(s) y además incorporar atributos y métodos propios, que a su vez serán heredados por sus hijas.
  • 14. Representación: • En la notación algorítmica: Se coloca el nombre de la clase padre después de la frase Hereda de del encabezado de la clase y se usan sus atributos y métodos públicos o protegidos. Ejemplo: Clase Punto3D Hereda de Punto2D. • En el diagrama de clases: La herencia se representa mediante una relación de generalización/especificación, que se denota de la siguiente forma:
  • 15.
  • 16. Es una relación que representa a los objetos compuestos por otros objetos. Indica Objetos que a su vez están formados por otros. El objeto en el nivel superior de la jerarquía es el todo y los que están en los niveles inferiores son sus partes o componentes. Representación en el Diagrama de Clase: La relación forma parte de, no es más que una asociación, que se denota: Si motor forma parte de carro, la flecha apunta a la clase motor, y el diamante va pegado a carro. La multiplicidad es el rango de cardinalidad permitido que puede asumir la asociación, se denota LI..LS. Se puede usar * en el limite superior para representar una cantidad ilimitada (ejemplo: 3..*).
  • 17.
  • 18. Un componente es parte esencial de un elemento. La relación es más fuerte que el caso de agregación, al punto que si el componente es eliminado o desaparece, la clase mayor deja de existir. Representación en el Diagrama de Clases La relación de composición, se denota de la siguiente forma:
  • 19. Es una asociación que se establece cuando dos clases tienen una dependencia de utilización, es decir, una clase utiliza atributos y/o métodos de otra para funcionar. Estas dos clases no necesariamente están en jerarquía, es decir, no necesariamente una es clase padre de la otra, a diferencia de las otras relaciones de clases. El ejemplo mas común de esta relación es de objetos que son utilizados por los humanos para alguna función, como Lápiz (se usa para escribir), tenedor (se usa para comer), silla (se usa para sentarse), etc. Otro ejemplo son los objetos Cajero y Cuenta. El Cajero “usa a” la cuenta para hacer las transacciones de consulta y retiro y verificar la información del usuario.
  • 20. Representación en el Diagrama de Clases La relación de uso, se denota con una dependencia estereotipada: Ejemplos:
  • 22. Es el principio de ignorar aquellos aspectos de un fenómeno observado que no son relevantes, con el objetivo de concentrarse en aquellos que si lo son. Una abstracción denota las características esenciales de un objeto (datos y operaciones), que lo distingue de otras clases de objetos. Decidir el conjunto correcto de abstracciones de un determinado dominio, es el problema central del diseño orientado a objetos. Los mecanismos de abstracción son usados en el EOO para extraer y definir del medio a modelar, sus características y su comportamiento. • Es una de las principales características a tener en cuenta ya que permite vislumbrar los diferentes agentes u objetos implicados en un problema. • Captar los atributos y métodos que conforman cada objeto y la relación que existen entre ellos. • Resolver el problema en subproblemas donde cada objeto se haga cargo de cada subproblema. • La comunicación entre objetos generan la solución general a todo el problema. (Divide y vencerás).
  • 23. Es la propiedad del EOO que permite ocultar al mundo exterior la representación interna del objeto. Esto quiere decir que el objeto puede ser utilizado, pero los datos esenciales del mismo no son conocidos fuera de él. La idea central del encapsulamiento es esconder los detalles y mostrar lo relevante. Permite el ocultamiento de la información separando el aspecto correspondiente a la especificación de la implementación; de esta forma, distingue el "qué hacer" del "cómo hacer". La especificación es visible al usuario, mientras que la implementación se le oculta. El encapsulamiento en un sistema orientado a objeto se representa en cada clase u objeto, definiendo sus atributos y métodos con los siguientes modos de acceso: • Público (+) Atributos o Métodos que son accesibles fuera de la clase. Pueden ser llamados por cualquier clase, aun si no está relacionada con ella. • Privado (-) Atributos o Métodos que solo son accesibles dentro de la implementación de la clase. • Protegido (#): Atributos o Métodos que son accesibles para la propia clase y sus clases hijas (subclases). Los atributos y los métodos que son públicos constituyen la interfaz de la clase, es decir, lo que el mundo exterior conoce de la misma.
  • 24. • Un objeto sin comunicación con el mundo exterior no es de utilidad. La idea no es crear islas de objetos si no objetos relacionados. • Los objetos interactúan entre ellos mediante mensajes. • Cuando un objeto A quiere que otro objeto B ejecute una de sus funciones o procedimientos miembro (Métodos de B), el objeto A manda un mensaje al objeto B. Llevar ( TV ) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV Entregar ( ) Persona Técnico •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) Ejemplo: Una persona desea llevar su televisor descompuesto para que sea arreglado por un técnico.
  • 25. Es una propiedad del EOO que permite que un método tenga múltiples implementaciones, que se seleccionan en base al tipo objeto indicado al solicitar la ejecución del método. El polimorfismo operacional o Sobrecarga operacional permite aplicar operaciones con igual nombre a diferentes clases o están relacionados en términos de inclusión. En este tipo de polimorfismo, los métodos son interpretados en el contexto del objeto particular, ya que los métodos con nombres comunes son implementados de diferente manera dependiendo de cada clase. Objeto 2 function Sumar (a,b) Sumar = a + b End Function Objeto 1 Objeto2.sumar (a,b) Objeto3.sumar (a,b,c) Objeto 3 function Sumar (a,b,c) Sumar = a + b + c End Function El objeto 1 invoca a dos métodos que llevan el mismo nombre, pero funcionan diferente en cada objeto.