SlideShare una empresa de Scribd logo
1 de 23
PROGRAMACION
ORIENTADA A OBJETOS


La programación orientada a objetos no debe confundirse con un lenguaje programación
orientado a objetos.



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.



Ejemplo:
a. Problema: Una persona necesita ver televisión.
b. Solución: Existen 3 elementos o agentes que se pueden abstraer del problema:

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.


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.

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.


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
ATRIBUTOS
Marca. De tipo cadena.
METODOS
Emitir_Señal ( )
Emitir_Audio ( )
Decodificar_Señal (señal_entrada)


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.
ATRIBUTOS
tipo. De tipo cadena.
Resolución. De tipo cadena
Marca. De tipo cadena.

METODOS
Emitir_Señal ( )
Emitir_Audio ( )
Decodificar_Señal (señal_entrada)


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.
OTRO EJEMPLO:


Se pretende modelar un objeto llamado CARRO el cual existe en el mundo real. Este objeto tiene
unos atributos o variables: placa, Color, No_chasis, No_puertas, No._llantas, tipo. Unos
comportamientos y métodos: Acelerar (velocidad), Frenar (velocidad), mover_cambio (No_cambio),

CLASE CARRO
ATRIBUTOS
placa. De tipo decimal.
Color. De tipo cadena
No_chasis. De tipo cadena.
No_puertas. De tipo entero.
No_llantas. De tipo entero.
METODOS
Acelerar (Velocidad)
Frenar (Velocidad)
Mover_cambio (No_cambio)
Girar_derecha ( )
Girar_izquierda ( )
ABSTRACCION.
ENCAPSULAMIENTO.
MENSAJES.

POLIMORFISMO.
HERENCIA.


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).


Esta propiedad permite la ocultación de la información es decir permite
asegurar que el contenido de un objeto se pueda ocultar del mundo
exterior dejándose ver lo que cada objeto necesite hacer publico.



Ejemplo: Una persona desea llevar su televisor descompuesto para que
sea arreglado por un técnico.
técnico

persona
Entregar ( )

Llevar ( TV )
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)

•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV


Esta propiedad permite la ocultación de la información es
decir permite asegurar que el contenido de un objeto se pueda
ocultar del mundo exterior dejándose ver lo que cada objeto
necesite hacer publico.



Ejemplo: Una persona desea llevar su televisor descompuesto
para que sea arreglado por un técnico.
persona

técnico
Entregar ( )

Llevar ( TV )
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)

•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV


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.
persona

técnico
Entregar ( )

Llevar ( TV )
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)

•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV


Los comportamientos pueden ser identificados bajo el mismo
nombre pero procesan información de manera diferente de
acuerdo al objeto que lo contenga
.

Objeto 2
function Sumar (a,b)
Sumar = a + b
End Function

Objeto 1
Objeto2.sumar (a,b)
Objeto3.sumar (a,b,c)

El objeto 1 invoca a 2 métodos que llevan el
mismo nombre pero funcionan diferente en
cada objeto.

Objeto 3
function Sumar (a,b,c)
Sumar = a + b + c
End Function


Los comportamientos pueden ser identificados bajo el mismo nombre
pero procesan información de manera diferente de acuerdo al objeto
que lo contenga.
objeto


El mecanismo de herencia permite definir nuevas clases partiendo de
otras ya existentes. Las clases que derivan de otras heredan
automáticamente todo su comportamiento, pero además pueden
introducir características particulares propias que las diferencian
.

ANIMAL

MAMIFERO

MAMIFERO

MAMIFERO

MAMIFERO

MAMIFERO

MAMIFERO


Permiten controlar la forma de acceder a los atributos y métodos encapsulados
dentro de una clase.



TIPOS:
PUBLICO: Cualquier atributo o método Publico puede se accedido desde
fuera de la clase. Se representa por (+).

PRIVADO: Cualquier atributo o método Privado NO puede se accedido desde
fuera de la clase. Solo puede ser utilizado internamente en la clase. Se
representa por ( - ).
PROTEGIDO: Cualquier atributo o método Protegido puede ser heredado
por otra clase pero en esta ultima se convierten en elementos Privados. Se
representa por ( # ).
Cliente
- Nombre: Cadena
- Teléfono: Entero
- Dirección: Cadena
- Fecha_nacimiento

+ FijarNombre( )
+ FijarTel ( )
+ FijarDir ( )
+ FijarFechaNac ( )
- CalcularEdad( )
+ ObtenerEdad ( )
# ObtenerDatos ( )

Cli : cliente
Cli.FijarNombre(“Juan”)
Cli.FijarTel(8231451)

Registrar_BD
+ Registrar ( )


UML es un lenguaje de modelado para especificar el análisis y diseño de sistemas
orientados a objetos.



Permite diagramas los requerimientos funcionales del sistemas : Diagrama de
Casos de Uso.



Permite abstraer mediante diagramas específicos las diferentes clases y objetos
con sus respectivos atributos y métodos logrando especificar claramente las
correspondientes relaciones o envió de mensajes entre objetos. Diagramas de
Clases, Objetos y de Secuencia.



Permite visualizar los diferentes componentes donde se pondrá en
funcionamiento el nuevo sistemas orientado a objetos. Diagramas de
Despliegue.


Busca plasmar los elementos que intervienen en la aplicación ya sean los agentes que
facilitan la comunicación con el usuario o los pertenecientes a la lógica del negocio. Describe
los atributos y métodos de cada clase a implementar.

Más contenido relacionado

La actualidad más candente

Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesSorey García
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IEKaren Olan
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosmichaelalta
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOAnabel Jaramillo
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetoschutas666
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .netjohnny herrera
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetosguest160f88
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)Eric Martinez Aguilar
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos JavaC_QUENGUAN
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosPatricio Abad
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevjtk1
 

La actualidad más candente (20)

Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para Dummies
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETO
 
Trabajo poo
Trabajo poo Trabajo poo
Trabajo poo
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Clases y Objetos
Clases y ObjetosClases y Objetos
Clases y Objetos
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .net
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetos
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)
 
Poo
PooPoo
Poo
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos Java
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A Objetos
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1
 
POO
POOPOO
POO
 
Clases poo
Clases pooClases poo
Clases poo
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
 

Destacado (12)

SILABO INF.102
SILABO INF.102SILABO INF.102
SILABO INF.102
 
Actividad 6
Actividad 6Actividad 6
Actividad 6
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Suma
SumaSuma
Suma
 
Tema nº 2 102
Tema nº 2 102Tema nº 2 102
Tema nº 2 102
 
Estructuras
EstructurasEstructuras
Estructuras
 
Arreglos 3
Arreglos 3Arreglos 3
Arreglos 3
 
Tema2
Tema2Tema2
Tema2
 
Tema1
Tema1Tema1
Tema1
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similar a POO en 40

Programacion
ProgramacionProgramacion
Programacionelizabeth
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01elizabeth
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Joselyn Aguirre
 
Unidad 1 Programación Orientada a Objetos (Programación III)
Unidad 1 Programación Orientada a Objetos (Programación III)Unidad 1 Programación Orientada a Objetos (Programación III)
Unidad 1 Programación Orientada a Objetos (Programación III)Servicio Tecnico de Computadoras
 
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 objetosEdward Ropero
 
Rsw investigacion
Rsw investigacionRsw investigacion
Rsw investigacionmmurcia57
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetosDon Augusto
 
Conceptos fundamentales de la programación
Conceptos fundamentales de la programaciónConceptos fundamentales de la programación
Conceptos fundamentales de la programaciónMartin Pacheco
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosMarines Ahuanlla
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnetjhordy2000
 
6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptxDieguess
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clasesmtemarialuisa
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clasesmtemarialuisa
 
clase 01-Programacion Oientada a Objetos.pptx
clase 01-Programacion Oientada a Objetos.pptxclase 01-Programacion Oientada a Objetos.pptx
clase 01-Programacion Oientada a Objetos.pptxrobertobecerrilV1
 

Similar a POO en 40 (20)

Programacion
ProgramacionProgramacion
Programacion
 
Terminologia de la POO
Terminologia de la POOTerminologia de la POO
Terminologia de la POO
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Otro poo
Otro pooOtro poo
Otro poo
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
 
Unidad 1 Programación Orientada a Objetos (Programación III)
Unidad 1 Programación Orientada a Objetos (Programación III)Unidad 1 Programación Orientada a Objetos (Programación III)
Unidad 1 Programación Orientada a Objetos (Programación III)
 
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
 
Rsw investigacion
Rsw investigacionRsw investigacion
Rsw investigacion
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetos
 
Conceptos fundamentales de la programación
Conceptos fundamentales de la programaciónConceptos fundamentales de la programación
Conceptos fundamentales de la programación
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
 
Unidad i parte i
Unidad i parte iUnidad i parte i
Unidad i parte i
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnet
 
6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
clase 01-Programacion Oientada a Objetos.pptx
clase 01-Programacion Oientada a Objetos.pptxclase 01-Programacion Oientada a Objetos.pptx
clase 01-Programacion Oientada a Objetos.pptx
 
Programacion orientada a obetos
Programacion orientada a obetosProgramacion orientada a obetos
Programacion orientada a obetos
 
Primeraclaseobjetos clases
Primeraclaseobjetos clasesPrimeraclaseobjetos clases
Primeraclaseobjetos clases
 

Más de Marta Quintero (20)

Tic en la educacion
Tic en la educacionTic en la educacion
Tic en la educacion
 
TIC EN LA EDUCACIÓN
TIC EN LA EDUCACIÓNTIC EN LA EDUCACIÓN
TIC EN LA EDUCACIÓN
 
Tema 2
Tema 2Tema 2
Tema 2
 
Tema 1 inf-202
Tema 1 inf-202Tema 1 inf-202
Tema 1 inf-202
 
Contenido
ContenidoContenido
Contenido
 
MATRICULA CTG 2020
MATRICULA CTG 2020MATRICULA CTG 2020
MATRICULA CTG 2020
 
Narrado
NarradoNarrado
Narrado
 
Resolucion 60 aprueba estrategia curricular priorizada
Resolucion 60 aprueba estrategia curricular priorizadaResolucion 60 aprueba estrategia curricular priorizada
Resolucion 60 aprueba estrategia curricular priorizada
 
Normativas, lineamientos para restablecimiento del ano escolar 2020. rr
Normativas, lineamientos para restablecimiento del ano escolar 2020. rrNormativas, lineamientos para restablecimiento del ano escolar 2020. rr
Normativas, lineamientos para restablecimiento del ano escolar 2020. rr
 
Graduandos Vespertino
Graduandos VespertinoGraduandos Vespertino
Graduandos Vespertino
 
Plataformas
PlataformasPlataformas
Plataformas
 
B2 tema 3
B2 tema 3B2 tema 3
B2 tema 3
 
Bloque 2 tema 1
Bloque 2 tema 1Bloque 2 tema 1
Bloque 2 tema 1
 
Estructuras PseInt
Estructuras PseIntEstructuras PseInt
Estructuras PseInt
 
Herramientas para S.E.
Herramientas para S.E.Herramientas para S.E.
Herramientas para S.E.
 
INF-102
INF-102INF-102
INF-102
 
Dosificacion
DosificacionDosificacion
Dosificacion
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 
Lab 3
Lab 3Lab 3
Lab 3
 
Agenda nº 1
Agenda nº 1Agenda nº 1
Agenda nº 1
 

POO en 40

  • 2.  La programación orientada a objetos no debe confundirse con un lenguaje programación orientado a objetos.  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.  Ejemplo: a. Problema: Una persona necesita ver televisión. b. Solución: Existen 3 elementos o agentes que se pueden abstraer del problema: 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.
  • 3.  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.
  • 4.  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. 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.
  • 5.  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 ATRIBUTOS Marca. De tipo cadena. METODOS Emitir_Señal ( ) Emitir_Audio ( ) Decodificar_Señal (señal_entrada)
  • 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. ATRIBUTOS tipo. De tipo cadena. Resolución. De tipo cadena Marca. De tipo cadena. METODOS Emitir_Señal ( ) Emitir_Audio ( ) Decodificar_Señal (señal_entrada)
  • 7.
  • 8.  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.
  • 9. OTRO EJEMPLO:  Se pretende modelar un objeto llamado CARRO el cual existe en el mundo real. Este objeto tiene unos atributos o variables: placa, Color, No_chasis, No_puertas, No._llantas, tipo. Unos comportamientos y métodos: Acelerar (velocidad), Frenar (velocidad), mover_cambio (No_cambio), CLASE CARRO ATRIBUTOS placa. De tipo decimal. Color. De tipo cadena No_chasis. De tipo cadena. No_puertas. De tipo entero. No_llantas. De tipo entero. METODOS Acelerar (Velocidad) Frenar (Velocidad) Mover_cambio (No_cambio) Girar_derecha ( ) Girar_izquierda ( )
  • 10.
  • 11.
  • 13.  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).
  • 14.  Esta propiedad permite la ocultación de la información es decir permite asegurar que el contenido de un objeto se pueda ocultar del mundo exterior dejándose ver lo que cada objeto necesite hacer publico.  Ejemplo: Una persona desea llevar su televisor descompuesto para que sea arreglado por un técnico. técnico persona Entregar ( ) Llevar ( TV ) •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV
  • 15.  Esta propiedad permite la ocultación de la información es decir permite asegurar que el contenido de un objeto se pueda ocultar del mundo exterior dejándose ver lo que cada objeto necesite hacer publico.  Ejemplo: Una persona desea llevar su televisor descompuesto para que sea arreglado por un técnico. persona técnico Entregar ( ) Llevar ( TV ) •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV
  • 16.  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. persona técnico Entregar ( ) Llevar ( TV ) •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV
  • 17.  Los comportamientos pueden ser identificados bajo el mismo nombre pero procesan información de manera diferente de acuerdo al objeto que lo contenga . Objeto 2 function Sumar (a,b) Sumar = a + b End Function Objeto 1 Objeto2.sumar (a,b) Objeto3.sumar (a,b,c) El objeto 1 invoca a 2 métodos que llevan el mismo nombre pero funcionan diferente en cada objeto. Objeto 3 function Sumar (a,b,c) Sumar = a + b + c End Function
  • 18.  Los comportamientos pueden ser identificados bajo el mismo nombre pero procesan información de manera diferente de acuerdo al objeto que lo contenga. objeto
  • 19.  El mecanismo de herencia permite definir nuevas clases partiendo de otras ya existentes. Las clases que derivan de otras heredan automáticamente todo su comportamiento, pero además pueden introducir características particulares propias que las diferencian . ANIMAL MAMIFERO MAMIFERO MAMIFERO MAMIFERO MAMIFERO MAMIFERO
  • 20.  Permiten controlar la forma de acceder a los atributos y métodos encapsulados dentro de una clase.  TIPOS: PUBLICO: Cualquier atributo o método Publico puede se accedido desde fuera de la clase. Se representa por (+). PRIVADO: Cualquier atributo o método Privado NO puede se accedido desde fuera de la clase. Solo puede ser utilizado internamente en la clase. Se representa por ( - ). PROTEGIDO: Cualquier atributo o método Protegido puede ser heredado por otra clase pero en esta ultima se convierten en elementos Privados. Se representa por ( # ).
  • 21. Cliente - Nombre: Cadena - Teléfono: Entero - Dirección: Cadena - Fecha_nacimiento + FijarNombre( ) + FijarTel ( ) + FijarDir ( ) + FijarFechaNac ( ) - CalcularEdad( ) + ObtenerEdad ( ) # ObtenerDatos ( ) Cli : cliente Cli.FijarNombre(“Juan”) Cli.FijarTel(8231451) Registrar_BD + Registrar ( )
  • 22.  UML es un lenguaje de modelado para especificar el análisis y diseño de sistemas orientados a objetos.  Permite diagramas los requerimientos funcionales del sistemas : Diagrama de Casos de Uso.  Permite abstraer mediante diagramas específicos las diferentes clases y objetos con sus respectivos atributos y métodos logrando especificar claramente las correspondientes relaciones o envió de mensajes entre objetos. Diagramas de Clases, Objetos y de Secuencia.  Permite visualizar los diferentes componentes donde se pondrá en funcionamiento el nuevo sistemas orientado a objetos. Diagramas de Despliegue.
  • 23.  Busca plasmar los elementos que intervienen en la aplicación ya sean los agentes que facilitan la comunicación con el usuario o los pertenecientes a la lógica del negocio. Describe los atributos y métodos de cada clase a implementar.