INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 2
Pilares fundamentales que sustentan el diseo orientado a objeto
El paradigma de orientacin a objeto se sustenta en pilares fundamentales que son: objeto, abstraccin, identidad, clase, herencia, polimorfismo y encapsulacin.
Objeto: Todo lo que puede ser materia de conocimiento o sensibilidad de parte del sujeto, incluso este mismo. (Diccionario de la lengua espaola, 2012)
Abstraccin: corresponde a la capacidad de separar o aislar las caractersticas de un objeto para tratarlas en forma aislada o, simplemente, para tratar el objeto en su forma nativa. Observa la siguiente imagen:
(Booch, 1996, pg. 46)
En la imagen se observan dos personas interactuando con el mismo objeto, pero la capacidad de abstraccin de cada uno de ellos es distinta, pues la nocin de objeto de acuerdo a su experiencia sensible es diferente.
Si se rescata el trmino sensibilidad, puede apreciarse que todo sujeto que observa su entorno por s slo, puede aprender de esa experiencia sensible, por lo tanto, los objetos son la materializacin de la experiencia sensible del sujeto y, en trminos finales, permiten abstraerse de lo que se observa para poder, a travs de una conducta intelectual, separar
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 3
las caractersticas de los comportamientos de dichos objetos, o bien verlos como un todo integrado que responde al entorno que lo rodea.
Un objeto no es ms que una entidad que posee caractersticas que lo definen (atributos) y comportamientos a los que puede responder (mtodos).
Ejemplo: Un cliente solicita al garzn, luego de realizar el pedido correspondiente, un vaso con agua.
El garzn, atendiendo la solicitud del cliente, trae sin problemas el vaso con agua.
He aqu un ejemplo concreto de caractersticas y comportamientos que se aprecian en forma explcita en los objetos participantes de esta escena.
Si se separan y analizan en forma aislada puede que su naturaleza no cambie, pero sus comportamientos s, dado que, para que puedan reaccionar, es necesaria la interaccin entre ellos, o sea, el agua por s sola sigue siendo agua, al igual que el vaso, pero la accin contener lquido (agua) del vaso no se apreciar. He aqu donde se torna relevante el concepto de objeto, el sujeto observa su entorno, independiente de la forma, las caractersticas y las acciones a las que puedan verse afectos. Los objetos no cambian su esencia, lo que cambia es la forma en que los percibimos.
En el mismo escenario pueden producirse muchos eventos asociados a la interaccin de estos dos objetos, pero por ahora lo importante es dar nfasis a las acciones propias de esa interaccin, dejando de lado los detalles.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 4
Identidad: es el conjunto de rasgos o caractersticas que identifican en forma unvoca a un objeto de otro. Los objetos pueden ser concretos, tales como una ventana, un trozo de papel, una bicicleta, o bien conceptuales como poltica de negocio, plan de riesgos, estudio de mercado, etc.
Todos los objetos poseen caractersticas que los diferencian de los dems.
Clase: definicin natural de un objeto (plantilla) que identifica todas las caractersticas y comportamientos que debieran tener todos los objetos de ese tipo. Ejemplo: todos los vehculos motorizados tienen por naturaleza motor, pero no todos los vehculos motorizados son vehculos de carrera. Por lo tanto, debera existir una clase de vehculos particulares y otra clase de vehculos de carrera.
Herencia: es la capacidad de compartir las caractersticas y comportamientos de una clase base en otras clases llamadas subclases. Gracias a esta caracterstica es posible la reutilizacin de un objeto en toda su forma.
Polimorfismo: es la capacidad que tienen los objetos de comportarse diferente ante determinados eventos que, por nombre o nomenclatura, pudiesen ser iguales, por ejemplo: la accin mover de un vehculo es totalmente diferente a la accin mover de un mueble.
INACAP Virtual |Material de apoyo - Anlisis y diseo orientado a objetos 5
Encapsulacin: tambin denominada ignorancia selectiva, implica la capacidad que entrega la orientacin a objetos de exponer solo la funcionalidad o comportamiento de los objetos, pero no su estructuracin y capacidad interna, de esta manera, los programadores omiten detalles del objeto, pues lo que importa es su funcionalidad.
Ejemplo: cada vez que un usuario sube al carro del metro sabe que en la estacin siguiente debe detenerse, esa accin es lo que importa, no se cuestiona o entra en detalles cmo es el mecanismo de frenos en s.