Diseño de elementos software con tecnologías basadas en componentes. IFCT0609. José Carlos García Bermúdez
Чтение книги онлайн.
Читать онлайн книгу Diseño de elementos software con tecnologías basadas en componentes. IFCT0609 - José Carlos García Bermúdez страница 6
![Diseño de elementos software con tecnologías basadas en componentes. IFCT0609 - José Carlos García Bermúdez Diseño de elementos software con tecnologías basadas en componentes. IFCT0609 - José Carlos García Bermúdez](/cover_pre895523.jpg)
Mientras que un método es el procedimiento o función que es invocado para actuar sobre un objeto, el mensaje se refiere a la petición realizada.
Un mensaje es la petición de un objeto a otro, al que le solicita ejecutar uno de sus métodos, por lo que se establece el convenio de denominar “emisor” al objeto que envía la petición y “receptor” al que la recibe.
En la estructura de un mensaje, se identifican los siguientes elementos:
Una vez que el receptor acepta el mensaje, ejecuta la acción que corresponda y, en algunos casos, retornará un valor.
El emisor solo necesita saber la estructura de los mensajes que aceptará el receptor, es decir, el nombre de sus métodos, los valores que recibe y los que devuelve; no es necesario conocer cómo se ejecutarán las acciones que dan respuesta a la petición. Una vez que el receptor acepta un mensaje, es el responsable de llevarlo a cabo.
La principal diferencia de un mensaje con respecto a la llamada a una función de la programación tradicional está en la obligación que tienen los mensajes de identificar al objeto receptor; de hecho, la interpretación del mensaje será diferente dependiendo del receptor.
Aunque haya objetos de diferentes clases que tengan métodos con el mismo nombre y parámetros, las acciones a ejecutar podrán ser diferentes. El mismo mensaje originará acciones distintas en función de a quién vaya dirigido.
Ejemplo
De la clase “curso” podrán instanciarse tantos objetos como cursos se deseen gestionar. Para el curso de “Contabilidad Financiera” se creará el objeto “contabilidad”, para el de “Gestión de Redes” el objeto “redes”, etc.
Todos estos objetos son instancias de la misma clase, por lo que tienen los mismos métodos y atributos (con valores diferentes); pero reciben mensajes diferentes, ya que cambia el objeto receptor del mensaje.
Un mismo objeto también recibe mensajes diferentes al ejecutar cada uno de sus métodos.
También es posible ejecutar un método con distintos parámetros, por lo que cambiará el correspondiente mensaje.
6.Resumen
La orientación a objetos aporta un nuevo enfoque al desarrollo de software, ya que obliga a cambiar la forma de pensar para realizar la descomposición del problema y el diseño de la aplicación.
Los programas se estructuran como colecciones de objetos que interactúan entre sí. Cada objeto es una instancia de una clase, que encapsula los datos y las operaciones para abstraer un determinado concepto.
La ocultación de la información va a permitir que pueda definirse el tipo de acceso a los elementos de una clase, haciendo posible diferenciar la interfaz pública de su implementación interna.
Los objetos se comunican entre sí a través de mensajes. Cada mensaje se corresponde con la ejecución de un método sobre el objeto de destino, que será el responsable de ejecutar la operación correspondiente y generar una respuesta.
Ejercicios de repaso y autoevaluación
1.En relación a la orientación a objetos, ¿qué afirmación es la más adecuada?
a.La ocultación de información dificulta la comprensión del código, ya que el programador no puede ver su implementación.
b.Hace más compleja la reutilización, ya que obliga a tener que reescribir el código para cada clase.
c.El encapsulado de datos y procedimientos facilita la descomposición del sistema en elementos más pequeños.
d.Las aplicaciones creadas son difíciles de mantener, ya que los objetos están muy interconectados y cualquier cambio implica la modificación los demás.
2.De las siguientes afirmaciones, indique cuál es verdadera o falsa.
La programación estructurada y modular son complementarias.
La programación orientada a objetos es un complemento a la programación estructurada y modular.
Una clase permite abstraer las características y el comportamiento de una entidad del mundo real.
La ocultación impide que pueda diferenciarse el interfaz de la implementación.
3.Complete la siguiente frase.
Las aplicaciones orientadas a objetos están formadas por un conjunto de _____________ que interaccionan entre sí enviándose _____________. Los objetos similares se abstraen en _____________, que son las que definen su comportamiento. Se dice que un _____________ es una instancia de una _____________.
4.¿Qué término define el concepto de aislar un elemento de su contexto o del resto de los elementos que lo acompañan?
a.Visibilidad.
b.Abstracción.
c.Ocultación.