3. La POO es…
“Un método de implementación en el que
los programas se organizan como
colecciones cooperativas de objetos,
cada uno de los cuales representa una
instancia de alguna clase y cuyas clases
son todas miembros de una jerarquía de
clases unidas mediante relaciones”
Grady Booch
4. El Modelo de Objetos
Objetos en el mundo real
Atributos
Propiedades
Métodos
Abstracción
Clases y Objetos
Encapsulamiento
Mensajes
Constructores
Destructor
Contempla los siguientes elementos
Herencia
Simple
Múltiple
Clases abstractas
Clases parametrizadas
Interfaces
Sobre-escritura
Sobrecarga
Polimorfismo
5. Objetos
En el mundo real
Los objetos poseen características que los distinguen entre sí.
Los objetos tienen acciones asociadas a ellos.
9. Clase
Modelo
Plantilla
Esquema A partir de una clase
se pueden crear
muchos objetos
independientes con
las mismas
características.
Contiene todas las
características
comunes de
ese conjunto de
objetos
Clase
10. Clase : Objeto
Datos
Es Creado
a partir
De Una
clase
Posee
Nombre
único
Instancia
De una
clase
Combina
Lo siguiente
Un Objeto
Funciones
11. Es la creación o manifestación concreta
de un objeto a partir de su clase
Instancia
Instancia
(clase
Carros)
12. Representan los datos de los objetos
Atributos
1
Son controlados
a través de la
declaración de
variables
2
Es importante
identificar el
tipo de dato
3
Se debe
seleccionar sólo
aquellos atributos
necesarios para el
modelo planteado
(abstracción)
Variables
De Instancia
Se crea una copia por
cada objeto creado
De Clase (Estáticas)
Una sóla variable para todos
los objetos generados
13. Métodos y Mensajes
Anatomía de un mensaje
Identidad del receptor
Método que ha de ejecutar
Información especial (argumentos o parámetros)
Ejemplos:
miTelevision.Encender( )
miTelevision.Apagar( )
miTelevision.CambiarCanal( 45 )
miPerro.Comer(“Croquetas”)
miEmpleado.Contratar (“Juan”, 3500)
miFactura.Imprimir( )
Son las acciones que realizan los objetos
y definen su comportamiento
Es el conjunto de
mensajes a los
cuales puede
responder un
objeto
Protocolo
del Objeto
14. Mensajes = Comunicación entre objetos
Los objetos realizan acciones
cuando reciben mensajes
Oprime botón
de encendido
Envía orden de
encendido
Mensaje recibido: Enciende TV
Acción realizada: envía orden de encendido
Mensaje recibido: Encender
Acción realizada: Muestra Imagen
15. Constructores y Destructores
Destructor.- Operación que
libera el estado de un objeto
y/o destruye el propio objeto.
Constructor.- Operación que
Crea un objeto y/o inicializa
su estado.
Los objetos ocupan espacio en memoria;
existen en el tiempo y deben crearse
[instanciarse] y destruirse:
16. Constructor
No puede: Prototiparse,
devolver valor, ni
invocarse explícitamente
Es un método especial de la clase
que sirve para crear objetos,
inicializar atributos y propiedades;
Debe declararse publico y llamarse
igual que su clase; puede recibir
parámetros y sobrecargarse
En una clase pueden haber múltiples
constructores (sobrecarga)
17. Constructor
class Persona
{ public string Nombre;
public Persona()
{ Nombre = "Desconocido";}
public Persona(string nombreDeLaPersona)
{ Nombre = nombreDeLaPersona; }
}
class Programa
{ static void Main()
{ Persona unaPersona = new Persona();
System.Console.WriteLine(unaPersona.Nombre);
Persona otraPersona = new Persona("Ramon");
System.Console.WriteLine(otraPersona.Nombre);
System.Console.ReadLine();
}
}
18. Herencia
Capacidad para utilizar características
previstas en antepasados o ascendientes.
Permite construir nuevas clases a partir de
otras ya existentes, permitiendo que éstas
les “transmitan” sus propiedades.
Objetivo: Reutilización de código.
19. Herencia (Tipos)
Herencia Simple.-
Una clase puede tener
sólo un ascendiente.
[Una subclase puede
heredar de una única
clase].
Herencia múltiple
(en malla).- Una clase
puede tener más de un
ascendiente inmediato.
[Heredar de más de
una clase].
20. Encapsulamiento
El encapsulamiento oculta
detalles de la implementación
de un objeto.
Los objetos encapsulan lo que
hacen. Ocultan la funcionalidad
interna de sus operaciones, de otros
objetos y del mundo exterior.
Permite incluir en una sola entidad información y
operaciones que controlan dicha información.
Permite: Componentes públicos [Accesibles,
Visibles]. Componentes privados [No accesibles,
Ocultos]. Restricción de accesos indebidos.
21. Abstracción
Se refiere a “quitar”
atributos, propiedades
y métodos de un
objeto y quedarse solo
con aquellos que sean
necesarios (relevantes
para el problema a
solucionar).
La abstracción se
centra en las
características
esenciales de algún
objeto, en relación a
la perspectiva del
observador.
Se define como la
capacidad para
examinar algo sin
preocuparse de sus
detalles internos
De datos o Funcional
22. Polimorfismo
Es el uso de un mismo nombre
para representar o significar más
de una acción.
La sobrecarga es un tipo de
Polimorfismo.
Que un mismo mensaje pueda
producir acciones totalmente
diferentes cuando se recibe por
objetos diferentes del mismo tipo.
Un usuario puede enviar un mensaje
genérico y dejar los detalles de la
implementación exacta para el objeto
que recibe el mensaje en tiempo de
ejecución. Para este caso, se utiliza
herencia y sobrescritura (Override).
25. Conclusiones
Después de esta breve explicación
podemos concluir que la programación
orientada a objetos, es un conjunto de
técnicas que pueden utilizarse para
desarrollar programas eficientemente.
Los objetos son los elementos principales
de construcción. El paradigma de la
Orientación a Objetos es el estilo aún
dominante de programación, descripción
y modelado de hoy en día
26. Bibliografía.
Add Your Title
Add Your Title
Herbert Schildt
C# Manual de
referencia
Ed. Mc Graw Hill
2005
Fco. Javier Ceballos
Eciclopedia de
Microsoft Visual C#
Ed. Alfaomega
2007
Bruno López
Takeyas
Programación
Orientada a Objetos
en C# .NET.
http://www.itnuevolar
edo.edu.mx/Takeyas
2016