Clases y Objetos

Programación Orientada a Objetos


El primer paso que necesitamos para comenzar con Orientación  a Objetos es modificar la visión del problema que tenemos que resolver  respecto a la visión tradicional. El  modelo de Programación Orientada a objetos nos describe la manera de  construir  programas  organizados como colecciones de objetos, entendiendo por objeto,   la representación informática de una entidad.



Se describe un determinado sistema como un conjunto de objetos  que representan abstracciones del mundo real o virtual.
Cada objeto es una representación abstracta de una entidad del mundo real o virtual en términos de:

  • Un conjunto de características esenciales (atributos).
  • Un conjunto de operaciones o comportamientos que permiten la manipulación de estos atributos (métodos).



¿Qué es el sistema? ¿Qué objetos intervienen?

¿Qué hace el sistema?
El comportamiento del sistema estará simulado a través del comportamiento de los objetos que lo componen. Los objetos recibirán solicitudes o peticiones externas  y de acuerdo con la naturaleza de estas peticiones se comportarán de una determinada forma.

Mensajes

¿Cómo se consigue un determinado comportamiento de un objeto?
En POO, cualquier acción que lleva a cabo el sistema se inicia a través del envío de una petición a un objeto que será el responsable de la acción.
Las peticiones realizadas a los objetos son los mensajes.



Mensaje:

  • Un mensaje es  una petición enviada  a un objeto para que este se comporte de una determinada manera, realizando una de sus operaciones. Si el receptor de la solicitud acepta el mensaje, aceptará la responsabilidad de llevar a cabo la acción. En respuesta al mensaje, el receptor se comportará de una determinada forma.


Estructura de un mensaje:

Cada  mensaje consta de tres partes:

  • Identidad del objeto al que va dirigido el mensaje.
  • Operación solicitada (método).
  • Información adicional ( argumentos), necesaria para poder ejecutar el método.
Ejemplo 1:

                                                                                                                       

unCoche.arrancar():
El mensaje solicita al objeto UnCoche, la operación arrancar(); en respuesta al mensaje, unCoche modificará su atributo enmarcha asignándole el valor “cierto”.

unCoche.acelerar(20):
El mensaje solicita al objeto UnCoche, la operación acelerar() y le pasa como información adicional el incremento de velocidad correspondiente; en respuesta al mensaje, UnCoche modificará su atributo velocidad incrementando su valor en 20.

unCoche.frenar(20):
El mensaje solicita al objeto UnCoche, la operación frenar() y le pasa como información adicional el decremento de velocidad correspondiente; en respuesta al mensaje, UnCoche modificará su atributo velocidad decrementando su valor en 20.

unCoche.verVelocidad():
El mensaje solicita al objeto UnCoche, la operación verVelocidad(); como respuesta al mensaje UnCoche mira el valor del atributo velocidad y lo devuelve al exterior. (Acceso al atributo velocidad para ver su valor, sin cambiar su valor).

unCoche.parar():              
El mensaje solicita al objeto UnCoche, la operación de parar. UnCoche no podrá parar, a menos que su velocidad sea 0, en ese caso el objeto UnCoche modificará su atributo enmarcha   asignándole el valor “falso”




Fuente:
      https://vcalpena.wordpress.com/clases-y-objetos/