En este nuevo artículo hablaremos de los Objetos que son la pieza clave en la POO. La idea fundamental en los lenguajes orientados a objetos es combinar en una sola unidad de programación los datos y las funciones que operen con esos datos. Tal unidad es la que llamamos Objeto.
Por consiguiente, dentro de los objetos residen los datos de los lenguajes de programación tradicionales, tales como números, arrays, cadenas, etc. así como funciones y subrutinas que operan con ellos. Si quieres saber cómo trata el lenguaje orientado a objetos Swift de Apple estos tipos de datos puedes consultar los siguientes enlaces:
- Tipos de datos numéricos en Swift
- Alias de tipos y datos booleanos en Swift
- El concepto de Tupla en el lenguaje Swift
Las funciones dentro del objeto (funciones miembro en el lenguaje C++ ó métodos en Java) son el único medio de acceder a los datos privados de un objeto. Si se quiere leer el valor de un dato de un objeto, se llama a la función miembro deseada de dicho objeto, se lee el dato y se devuelve el valor. No se puede acceder a las variables y datos directamente ya que estas deben estar ocultas (por las funciones miembro) para asegurarnos que no las vamos a modificar accidentalmente desde fuera del objeto.
Los datos y las funciones miembro (métodos en Java, C#, Swift, etc.) asociados se dice que están encapsulados en una única entidad u objeto. El encapsulamiento y la ocultación de información son términos muy importantes en la descripción de lenguajes orientados a objetos.
Si queremos modificar los datos de un objeto, se conocerá exactamente el listado de cuales son las funciones que interactúan con el mismo y ninguna otra función que no esté en esa «lista» podrá acceder a los datos. Esta característica simplifica la escritura, depuración y mantenimiento del programa.
Como ejemplo de posible objeto en POO, usando notación gráfica de objetos, tendríamos el siguiente: «Consideremos una ilustración de un coche vendido por un distribuidor de coches. El identificador del objeto es Coche1. Los atributos (describen el estado del objeto del mundo real y las acciones que se asocian con él) que posee el objeto Coche1 podrían ser matrícula, fabricante, precio compra, precio actual, fecha compra, etc.»
Representación gráfica de los objetos
La representación gráfica del objeto Coche1 se muestra en la siguiente figura:
- Atributos: Datos o variables que caracterizan el estado de un objeto.
- Métodos: Procedimientos o acciones que cambian el estado de un objeto.
Hasta aquí el artículo que nos introduce de manera genérica al mundo de los objetos en la POO. Mas adelante continuaremos viendo aspectos relacionados con dichos objetos tales como mensajes, identificación de objetos, duración, etc. Hasta entonces, si teneis alguna duda o no entendéis algo ya sabéis que podeis contactar conmigo y gustosamente os lo aclararía. Nos leemos en el próximo!
Adiós, os!!