El documento define los conceptos fundamentales de objetos en programación orientada a objetos. Un objeto tiene estado, comportamiento e identidad. Al construir software basado en objetos individuales se obtienen beneficios como modularidad, encapsulamiento y reutilización de código. Las relaciones entre objetos incluyen herencia, asociación y composición.
que es Planimetría definición importancia en topografia.pptx
Programacion orientada a objetos
1. Conceptos
¿Qué es un objeto en el mundo real?
Un objeto es un elemento real o abstracto, que tiene un estado, un comportamiento y
una identidad. Un objeto es, pues, una mesa, una silla, un alumno, una clase, etc., pues
son elementos reales que se pueden comprender y están bien definidos. Un objeto
también es un concepto abstracto como un elemento denominado «Ordenador» que es
capaz de recibir un conjunto de números y los ordena ascendente o descendentemente.
Las características que definen un objeto son tres:
• estado
• comportamiento
• identidad.
2. Conceptos
a) Estado
Viene determinado para el conjunto de propiedades o atributos que tiene el objeto (que
es su estructura estática), junto con los valores que pueden asumir cada uno de esos
atributos (su estructura dinámica).
3. Conceptos
b) Comportamiento
El comportamiento de un objeto viene determinado por la forma de actuar al recibir un
mensaje para que realice una acción.
Un «mensaje» es una orden que se manda a un objeto para que realice una operación
con un propósito específico.
Un mensaje viene definido por tres componentes:
— El objeto receptor del mensaje, es decir, al objeto que se envía el mensaje.
— El selector del mensaje, que es la acción que se quiere que realice el objeto.
— Los argumentos, que son los valores que se transmiten con el selector y que, en
muchos casos, pueden ser nulos.
4. Conceptos
c) Identidad
Se entiende por identidad de un objeto la propiedad característica que tiene ese objeto
que le distingue de todos los demás. Realmente, es difícil encontrar un dato específico
que permanentemente identifique al objeto.
5. Construir códigos en objetos individuales de software proporciona una serie de
beneficios, incluyendo:
1. Modularidad.
2. Encapsulamiento.
3. Reutilizar código.
4. Portabilidad y depuración con facilidad
Ventajas
6. Modularidad
El código fuente de un objeto puede ser escrito y mantenido de forma independiente
del código fuente de otros objetos. Una vez creado, un objeto puede ser fácilmente
pasado a otro sistema.
Encapsulamiento
Al interactuar sólo con los métodos de un objeto, los detalles de su implementación
interna permanecen ocultos del mundo exterior.
Reutilizar código
Si un objeto ya existe (tal vez escrito por otro desarrollador de software), puede utilizar
ese objeto en su programa. Esto permite a los especialistas implementar/aplicar/probar
hacer depuraciones de niveles complejos, desarrollar objetos de tareas específicas, en
los cuales se puedan confiar para ejecutar en su propio código.
Ventajas
7. Portabilidad y depuración con facilidad
Si un objeto particular, resulta ser un problema, simplemente tendrá que sacarlo de su
aplicación y conectar un objeto diferente como su reemplazo. Esto es análogo a la
solución de problemas mecánicos en el mundo real. Si se rompe un perno, que
sustituya lo roto, no toda la máquina.
Ventajas
9. Encapsulamiento
Hay muchos datos que no tiene porque conocerlo aquel que este usando
la clase Persona; ya que son inherentes al objeto y solo controlan su
funcionamiento interno; por ejemplo, cuando alguien te ve puede saber
inmediatamente si eres hombre o mujer (propiedad) o puede hablarte y
obtener una respuesta procesada (método).
Esto es la encapsulación u ocultación; hacer las variables que son
innecesarias para el tratamiento del objeto pero necesarias para su
funcionamiento privadas, así como las funciones que no necesitan
interacción del usuario o que solo pueden ser llamadas por otras
funciones dentro del objeto (Como por ejemplo, palpitar).
10. Herencia
Es una propiedad que permite que los objetos sean creados a partir de otros ya
existentes, obteniendo características (métodos y atributos) similares a los ya
existentes. Es la relación entre una clase general y otra clase mas especifica. Es un
mecanismo que nos permite crear clases derivadas a partir de clase base.
11. Polimorfismo
Se denomina polimorfismo a la capacidad que tienen los objetos de una clase de
responder al mismo mensaje o evento en función de los parámetros utilizados durante
su invocación. Un objeto polimórfico es una entidad que puede contener valores de
diferentes tipos durante la ejecución del programa.
12. Asociación
Otro acontecimiento común es que los objetos se relacionan entre si de alguna
forma.
Por ejemplo, cuando enciende su televisor, en términos de orientación a objetos,
usted se asocia con su televisor.
La asociación "encendido" es en una sola dirección (una via), esto es, usted enciende
la televisión.
13. Asociación
Su computadora es una agregación o adición, otro tipo de asociación entre objetos.
Como muchas otras cosas que valdrían la pena tener, su equipo está constituido de
diversos tipos de componentes
14. Composición
La composición es un tipo de relación dependiente en dónde un objeto mas
complejo esta conformado por objetos más pequeños.
Por ejemplo, como es un auto este tiene llantas.
Auto
Llantas
Puerta
Llantas
15. Diagrama de Clase
NombredeClase
<Acceso> nombreAtributo1: <TipoDato>
<Acceso> nombreAtributo2: <TipoDato>
<Acceso> nombreAtributo3: <TipoDato>
<Acceso> nombreAtributo4: <TipoDato>
<Acceso> nombreMetodo1: <TipoDatoRetorno>
16. Diagrama de Clase
Auto
color: String
modelo: String
marca: String
puertas: Puerta[]
encender: void
apagar: void
Objeto
Abstracción