martes, 3 de noviembre de 2015

CLASES Y OBJETOS EN PO




La programación Orientada a Objetos, es una teoría cuyo núcleo central suministra la base y modelo para resolver problemas de programación, Cómo tal, nos enseña un método el cual se basa en las interacciones de objetos para resolver las necesidades de un sistema informático.
La programación orientada a objetos (POO) ofrece elementos que facilitan el desarrollo de software en aspectos tales como modularización, reutilización de piezas de código y encapsulamiento (ocultar el estado de los objetos). 

Los dos elementos básicos de este paradigma de programación son las clases y los objetos.  Dos conceptos que se relacionan entre si, más son totalmente diferentes.

CLASES

La clasificación es algo que hacemos todos los días, a cada momento, “Cuando decimos “ave”, sabemos que nos referimos a “algo” con plumas, pico, dos patas, etc; entendemos claramente que la palabra “ave” se refiere a alguna cosa que cumple con unas características específicas, se comporta de una forma concreta.”[1]

De manera que, “AVE”, no es más que una palabra, pero nos permite clasificar las cosas. Es asi que en la programación orientada a objetos, una CLASE es una palabra (abstracción) que nos permite clasificar o “definir un tipo de objeto especificando qué propiedades (atributos), métodos (acciones) disponibles va a tener. 

“Las clases son plantillas que agrupan comportamiento (métodos) y estados (atributos) de los futuros objetos.”[2]

OBJETOS
Se puede decir que un objeto es todo aquello que pueda ser identificable dentro de una especificación de requerimientos o problema y tenga las siguientes características:

  • Tenga estados (atributos) definibles (abierto, cerrado).
  • Posea comportamientos (puede correr, saltar, volar, etc).
  • Son capaces de interactuar/comunicarse con otros objetos por medio de sus métodos o comportamientos.
Los objetos son instancias de una clase. De manera que, esa es su principal diferencia. Si retornamos al ejemplo de la clase “ave”, podemos afirmar que un objeto seria un ave en particular, es decir la gaviota x.(crear una instancia de la clase ave, llamada gaviota x).  

“Usando el símil “variable – tipo” de la programación estructurada, se entiendo que un objeto es una variable que tiene el comportamiento y estados del tipo (objeto)”[3]

Estas definiciones son quizás poco clarificadoras. Con un ejemplo grafico se puede explicar y  entender mejor. En primer lugar pensemos en un programa que trata de gestionar datos sobre los vehículos de transporte público de una ciudad.[4]

ANDRÉS MAURICIO MÉNDEZ MÉNDEZ 



[1] Frick, Cesar. 2008. Programación Orientada a Objetos – Clase e Instancia. Revisado en: https://thefricky.wordpress.com/2008/01/15/programacion-orientada-a-objetos-clase-e-instancia/