1. Programación
Orientada a Objetos I
Sorey Bibiana García Zapata
Ingeniera Informática
Politécnico Jaime Isaza Cadavid
www.politecnicojic.edu.co
Especialista en Desarrollo de Software
Universidad EAFIT
www.eafit.edu.co
2. Antes de intentar aprender algo
ten presente…
lo complejo, alguna vez… fue simple ,
entiende lo simple.
8. Típico!
Si bien esta definición es correcta, el problema está, en
que tanto lo comprendemos…
9. A título personal…
La orientación a objetos es “simplemente”
una forma de ver las cosas, o bien …
10. …es una forma de entender un problema
identificando las entidades principales que se encuentran
en el..
11. La programación orientada a objetos (POO) es por tanto
una forma de desarrollar un sistema,
pensando en las entidades principales del
problema que dicho sistema pretende resolver…
12. El lenguaje de programación es
la herramienta
para resolver el problema
El propósito de la POO no tiene que ver con
el lenguaje de programación
13. El propósito de la programación orientada a objetos
consiste en…
proporcionar una solución informática identificando los
conceptos relevantes presentes en el problema
14. Identificar los conceptos relevantes
o las entidades involucradas
en un problema significa…
reconocer las características de estos y las
acciones que realizan o bien que producen algún efecto
sobre ellos
15. Con respecto a los lenguajes de programación
podemos decir que…
cada uno usa la herramienta en que más hábil se considere,
el problema finalmente no cambia
16. De acuerdo a la situación con una u otra herramienta se nos hace
más o menos difícil
… y de acuerdo al escenario se debe elegir
una u otra herramienta de trabajo
22. …el mundo está lleno de objetos
reales, los cuales se pueden
representar como tales en una
solución computarizada.
23. Veamos…
Este es un objeto
…es un automóvil de plástico, rojo
con 4 llantas y 2 puertas
24. Si realizáramos el proceso mental lentamente,
nos daríamos cuenta de que al ver el objeto
emitimos un concepto preconcebido
es decir automóvil
25. En la imagen cada uno de los elementos que vemos es considerado
un objeto
Sin embargo de todos ellos podemos emitir
un concepto conocido y para ello usamos la palabra
globo
26. A ese concepto conocido que representa una
agrupación de objetos
…lo llamamos Clase
27. Una clase es como un molde de galletas…
… este determina la forma y características que
la galleta (el objeto) va a tener, sin ser el objeto real
28. El molde (la clase) no determina por ejemplo, que sabor tiene
cada una de las galletas…
…tampoco por cuanta cantidad de ingredientes estará compuesta.
29. La clase es una…
…los objetos son todos los que podamos crear
mentalmente a partir de dicha clase o concepto
31. Este grupo de personas tiene un conjunto de
características y comportamientos en común
Características
Nombre
Edad
Color de Piel
Profesión
Estado Civil
Comportamientos
Hablar
Caminar
Mirar
Nacer
Morir
32. Un objeto de la clase persona sería
Características
Nombre: Sandra
Edad: 22
Color de Piel: Morena
Profesión: Deportista
Estado Civil: Soltera
Comportamientos
Hablar
Caminar
Mirar
Nacer
Morir
33. Otro objeto de la clase persona sería
Características Comportamientos
Nombre: Carlos Hablar
Edad: 28 Caminar
Color de Piel: Blanco Mirar
Profesión: Abogado Nacer
Estado Civil: Casado Morir
34. Ya vamos entendiendo…
Una clase esta compuesta por
características (atributos o propiedades)
y por comportamientos (acciones o métodos)
35. Las características y comportamientos de una clase
son determinadas por el contexto del problema o escenario
Esto en programación quiere decir, que dentro de un sistema, solo
implementamos los atributos y métodos relacionados con el
ámbito del problema que estamos solucionando.
36. Veamos algunos conceptos adicionales…
A los valores que tienen los atributos de un
objeto se les conoce como el estado del
objeto, y a los atributos y métodos que ofrece se
les conoce como la interfaz
al código usado
para construir las clases se le conoce como la
implementación de la clase.
Interfaz 1. f. Inform. Conexión física y funcional entre dos aparatos o sistemas
independientes.
37. Los objetos se comunican se comunican
con otros a través de mensajes
Un mensaje es una
comunicación dirigida a
un objeto, que le ordena
que ejecute uno de sus
métodos con ciertos
parámetros asociados al
evento que lo generó.
Wikipedia
38. Los objetos tienen diferentes tipos de
relaciones
Asociación
Agregación/Composición
42. Y la reusabilidad significa
No se invente la rueda!
Lo que ya esta hecho es para usarse y algunas
de las cosas que no están hechas, deben
construirse pensando en que alguien
necesitará usarlo alguna vez
43. Con respecto a la comunicación
tenemos más principios
alta cohesión y el bajo acoplamiento
… que tan claros los tenemos?….
44. Cuando decimos que un componente
tiene una alta cohesión hablamos de
que todos los elementos dentro de el
están estrechamente relacionados
… el criterio de relación debe ser de negocio o técnico y no subjetivo
45. Cuando decimos que un componente
tiene una bajo acoplamiento hablamos
del nivel de independencia que tiene un
componente con respecto a otros