SlideShare una empresa de Scribd logo
Ariana Holguín Ubilla
Informática A1
DEFINICION
 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.
DEFINICION
 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.
DEFINICION DE CLASE
 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.
DEFINICION DE OBJETO
 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
DEFINICION DE OBJETO
 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
DEFINICION DE OBJETO
IDENTIFICACION DE OBJETOS
 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.
EJEMPLO DE OBJETO
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
EJEMPLO CLASE
EJEMPLO OBJETOS
CARACTERISTICAS IMPORTANTES
DE LA POO
 ABSTRACCION.
 ENCAPSULAMIENTO.
 MENSAJES.
 POLIMORFISMO.
 HERENCIA.
ABSTRACCION
 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).
ENCAPSULAMIENTO
 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.
Llevar ( TV )
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)
•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV
Entregar ( )
persona técnico
ENCAPSULAMIENTO
 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.
Llevar ( TV )
•Ver_TV( )
•Escuchar ( )
•Apagar ( )
•Prender ( )
•Llevar (TV)
•Desatornillar ( )
•Diagnosticar ( )
•Reparar ( )
•Entregar ( ) as TV
Entregar ( )
persona técnico
MENSAJES
 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)
POLIMORFISMO
 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)
Objeto 3
function Sumar (a,b,c)
Sumar = a + b + c
End Function
El objeto 1 invoca a 2 métodos que llevan el
mismo nombre pero funcionan diferente en
cada objeto.
POLIMORFISMO
 Los comportamientos pueden ser identificados bajo el mismo nombre pero procesan
información de manera diferente de acuerdo al objeto que lo contenga.
objeto
HERENCIA
 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 MAMIFEROMAMIFERO
MODIFICADORES DE ACCESO
 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 ( # ).
MODIFICADORES DE ACCESO
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
(Unified Modeling Language)
 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.
UML
DIAGRAMA DE CASOS DE USO
 Busca plasmar los requerimientos funcionales del nuevo sistema para cada uno de los usuarios.
Sistema de Gestion de Proyectos
(SGP)
Administrador
proyectos
Validar Acceso
Sistema de Gestion de Proyectos
(SGP)
Crear Proyecto
Asignar insumo
Administrador
proyectos
Asignar integrante
UML
DIAGRAMA DE CLASES
 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.
UML
DIAGRAMA DE SECUENCIA
 Permiten abstraer la secuencia de mensajes entre objetos a través del tiempo.
UML
DIAGRAMA DE DESPLIEGUE
 Integra los componentes Hardware y Software del sistema.
CLASES
VISUAL BASIC .NET
 Para crear una clase en visual Basic .NET debemos utilizar la palabra reservada Class
seguida den nombre de dicha clase a construir:
Class Cliente
instrucciones
End Class
 Por lo tanto, todo lo que se conforme como instrucciones estará encapsulado en la Clase
Cliente.
CLASES
VISUAL BASIC .NET
 Creación de una clase Cliente con algunos elementos
encapsulados:
Class Cliente
Public Nombre As String
Public Sub MostrarNombre()
MsgBox("El nombre del cliente: ", Nombre)
End Sub
End Class
 Para poder utilizar valores a las propiedades o variables que define la clase
y además, utilizar los procedimientos y funciones encapsuladas debemos
crear un Objeto Cliente:
Dim Cli As Cliente
Cli = new Cliente ( )
Dim Cli As new Cliente( )
OBJETOS
VISUAL BASIC .NET
 La clase:
Class Cliente
Public Nombre As String
Public Sub MostrarNombre()
MsgBox("El nombre del cliente: “ & Nombre)
End Sub
End Class
 El objeto: Dim Cli As new Cliente( )
 Para acceder a las instrucciones mediante el objeto :
Cli.Nombre = “ARIANA”
Cli.MostrarNombre ( )
HERENCIA Y POLIMORFISMO
VISUAL BASIC .NET
 Las clases:
 La clase: ClienteMoroso hereda los atributos y métodos públicos de la clase Cliente.
Dim Cli As new Cliente( )
Dim CliM As new ClienteMoroso( )
Cli.Nombre = “Cesar David”
CliM.Nombre = “Juan Jose”
Cli.MostrarNombre( )
CliM.MostrarNombre( )
Class Cliente
Public Nombre As String
Public Sub MostrarNombre()
MsgBox(Nombre)
End Sub
End Class
Class ClienteMoroso
Inherits Cliente ‘ HERENCIA
Public Deuda As Decimal
End Class
POLIMORFISMO

Más contenido relacionado

La actualidad más candente

Introduccion a la poo
Introduccion a la pooIntroduccion a la poo
Introduccion a la poo
Boris Salleg
 
Constructores en Java
Constructores en JavaConstructores en Java
Constructores en Java
UCE
 
Diagramas de clases
Diagramas de clasesDiagramas de clases
Diagramas de clases
Juan Pablo Bustos Thames
 
encapsulamiento
encapsulamientoencapsulamiento
encapsulamiento
zeta2015
 
concept of oops
concept of oopsconcept of oops
concept of oops
prince sharma
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
Alvaro Enrique Ruano
 
Terminologia de la POO
Terminologia de la POOTerminologia de la POO
Terminologia de la POO
Jonathan Montes
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
Jose Angel Rodriguez
 
S2-Representación Gráfica
S2-Representación GráficaS2-Representación Gráfica
S2-Representación Gráfica
Luis Fernando Aguas Bucheli
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
Actimel
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetos
desimartinez
 
Encapsulamiento en JAVA-NETBEANS
Encapsulamiento en JAVA-NETBEANSEncapsulamiento en JAVA-NETBEANS
Encapsulamiento en JAVA-NETBEANS
Universidad Tecnológica Intercontinental
 
Observer: Patrón de diseño
Observer: Patrón de diseñoObserver: Patrón de diseño
Observer: Patrón de diseño
Luis Alberto Rodriguez
 
Paradigma Programación Orientada a Objetos (POO)
Paradigma Programación Orientada a Objetos (POO)Paradigma Programación Orientada a Objetos (POO)
Paradigma Programación Orientada a Objetos (POO)
Fredy Nicolas Moreno Puerto
 
Fundamentos programacion poo
Fundamentos programacion pooFundamentos programacion poo
Fundamentos programacion poo
Ricardo Garcia
 
Asociaciones entre objetos-generalización especialización
Asociaciones entre objetos-generalización especializaciónAsociaciones entre objetos-generalización especialización
Asociaciones entre objetos-generalización especialización
UVM
 
Java static keyword
Java static keywordJava static keyword
Java static keyword
Lovely Professional University
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
1da4
 
modelo er
modelo ermodelo er
Diagrama UML de Clases
Diagrama UML de ClasesDiagrama UML de Clases
Diagrama UML de Clases
Adal Dg
 

La actualidad más candente (20)

Introduccion a la poo
Introduccion a la pooIntroduccion a la poo
Introduccion a la poo
 
Constructores en Java
Constructores en JavaConstructores en Java
Constructores en Java
 
Diagramas de clases
Diagramas de clasesDiagramas de clases
Diagramas de clases
 
encapsulamiento
encapsulamientoencapsulamiento
encapsulamiento
 
concept of oops
concept of oopsconcept of oops
concept of oops
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Terminologia de la POO
Terminologia de la POOTerminologia de la POO
Terminologia de la POO
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
 
S2-Representación Gráfica
S2-Representación GráficaS2-Representación Gráfica
S2-Representación Gráfica
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetos
 
Encapsulamiento en JAVA-NETBEANS
Encapsulamiento en JAVA-NETBEANSEncapsulamiento en JAVA-NETBEANS
Encapsulamiento en JAVA-NETBEANS
 
Observer: Patrón de diseño
Observer: Patrón de diseñoObserver: Patrón de diseño
Observer: Patrón de diseño
 
Paradigma Programación Orientada a Objetos (POO)
Paradigma Programación Orientada a Objetos (POO)Paradigma Programación Orientada a Objetos (POO)
Paradigma Programación Orientada a Objetos (POO)
 
Fundamentos programacion poo
Fundamentos programacion pooFundamentos programacion poo
Fundamentos programacion poo
 
Asociaciones entre objetos-generalización especialización
Asociaciones entre objetos-generalización especializaciónAsociaciones entre objetos-generalización especialización
Asociaciones entre objetos-generalización especialización
 
Java static keyword
Java static keywordJava static keyword
Java static keyword
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
 
modelo er
modelo ermodelo er
modelo er
 
Diagrama UML de Clases
Diagrama UML de ClasesDiagrama UML de Clases
Diagrama UML de Clases
 

Similar a Programacion orientada

Programacion
ProgramacionProgramacion
Programacion
elizabeth
 
Clase2212
Clase2212Clase2212
Clase2212
Marta Quintero
 
Visual
VisualVisual
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
Cesar David Fernandez Grueso
 
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
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
Joselyn Aguirre
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
elizabeth
 
Otro poo
Otro pooOtro poo
Otro poo
Ricardo Garcia
 
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
Edward Ropero
 
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
Marines Ahuanlla
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetos
Don Augusto
 
6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx
Dieguess
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnet
jhordy2000
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
jent46
 
Programacion orientada a obetos
Programacion orientada a obetosProgramacion orientada a obetos
Programacion orientada a obetos
Pipe Paredes Muñoz
 
Rsw investigacion
Rsw investigacionRsw investigacion
Rsw investigacion
mmurcia57
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
mtemarialuisa
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
mtemarialuisa
 
Primeraclaseobjetos clases
Primeraclaseobjetos clasesPrimeraclaseobjetos clases
Primeraclaseobjetos clases
María Luisa Velasco
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
Consultor Independiente
 

Similar a Programacion orientada (20)

Programacion
ProgramacionProgramacion
Programacion
 
Clase2212
Clase2212Clase2212
Clase2212
 
Visual
VisualVisual
Visual
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
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)
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
 
Poo 100618211643-phpapp01
Poo 100618211643-phpapp01Poo 100618211643-phpapp01
Poo 100618211643-phpapp01
 
Otro poo
Otro pooOtro poo
Otro poo
 
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
 
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
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetos
 
6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx6. PROGRAMACION OO.pptx
6. PROGRAMACION OO.pptx
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnet
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Programacion orientada a obetos
Programacion orientada a obetosProgramacion orientada a obetos
Programacion orientada a obetos
 
Rsw investigacion
Rsw investigacionRsw investigacion
Rsw investigacion
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos clases
Primeraclaseobjetos clasesPrimeraclaseobjetos clases
Primeraclaseobjetos clases
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 

Programacion orientada

  • 2. DEFINICION  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. DEFINICION  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. DEFINICION DE CLASE  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. DEFINICION DE OBJETO  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. DEFINICION DE OBJETO  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
  • 8. IDENTIFICACION DE OBJETOS  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. EJEMPLO DE OBJETO 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. CARACTERISTICAS IMPORTANTES DE LA POO  ABSTRACCION.  ENCAPSULAMIENTO.  MENSAJES.  POLIMORFISMO.  HERENCIA.
  • 13. ABSTRACCION  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. ENCAPSULAMIENTO  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. Llevar ( TV ) •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV Entregar ( ) persona técnico
  • 15. ENCAPSULAMIENTO  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. Llevar ( TV ) •Ver_TV( ) •Escuchar ( ) •Apagar ( ) •Prender ( ) •Llevar (TV) •Desatornillar ( ) •Diagnosticar ( ) •Reparar ( ) •Entregar ( ) as TV Entregar ( ) persona técnico
  • 16. MENSAJES  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)
  • 17. POLIMORFISMO  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) Objeto 3 function Sumar (a,b,c) Sumar = a + b + c End Function El objeto 1 invoca a 2 métodos que llevan el mismo nombre pero funcionan diferente en cada objeto.
  • 18. POLIMORFISMO  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. HERENCIA  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 MAMIFEROMAMIFERO
  • 20. MODIFICADORES DE ACCESO  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. MODIFICADORES DE ACCESO 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 (Unified Modeling Language)  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. UML DIAGRAMA DE CASOS DE USO  Busca plasmar los requerimientos funcionales del nuevo sistema para cada uno de los usuarios. Sistema de Gestion de Proyectos (SGP) Administrador proyectos Validar Acceso Sistema de Gestion de Proyectos (SGP) Crear Proyecto Asignar insumo Administrador proyectos Asignar integrante
  • 24. UML DIAGRAMA DE CLASES  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.
  • 25. UML DIAGRAMA DE SECUENCIA  Permiten abstraer la secuencia de mensajes entre objetos a través del tiempo.
  • 26. UML DIAGRAMA DE DESPLIEGUE  Integra los componentes Hardware y Software del sistema.
  • 27. CLASES VISUAL BASIC .NET  Para crear una clase en visual Basic .NET debemos utilizar la palabra reservada Class seguida den nombre de dicha clase a construir: Class Cliente instrucciones End Class  Por lo tanto, todo lo que se conforme como instrucciones estará encapsulado en la Clase Cliente.
  • 28. CLASES VISUAL BASIC .NET  Creación de una clase Cliente con algunos elementos encapsulados: Class Cliente Public Nombre As String Public Sub MostrarNombre() MsgBox("El nombre del cliente: ", Nombre) End Sub End Class  Para poder utilizar valores a las propiedades o variables que define la clase y además, utilizar los procedimientos y funciones encapsuladas debemos crear un Objeto Cliente: Dim Cli As Cliente Cli = new Cliente ( ) Dim Cli As new Cliente( )
  • 29. OBJETOS VISUAL BASIC .NET  La clase: Class Cliente Public Nombre As String Public Sub MostrarNombre() MsgBox("El nombre del cliente: “ & Nombre) End Sub End Class  El objeto: Dim Cli As new Cliente( )  Para acceder a las instrucciones mediante el objeto : Cli.Nombre = “ARIANA” Cli.MostrarNombre ( )
  • 30. HERENCIA Y POLIMORFISMO VISUAL BASIC .NET  Las clases:  La clase: ClienteMoroso hereda los atributos y métodos públicos de la clase Cliente. Dim Cli As new Cliente( ) Dim CliM As new ClienteMoroso( ) Cli.Nombre = “Cesar David” CliM.Nombre = “Juan Jose” Cli.MostrarNombre( ) CliM.MostrarNombre( ) Class Cliente Public Nombre As String Public Sub MostrarNombre() MsgBox(Nombre) End Sub End Class Class ClienteMoroso Inherits Cliente ‘ HERENCIA Public Deuda As Decimal End Class POLIMORFISMO