Tener la concepción de un sistema orientado a objetos traerá necesariamente una nueva forma de pensar acerca de la visión de todo lo que nos rodea tomando como base conceptos del mundo real. Por visión hago alusión a la abstracción de nuestro entorno conceptualizándolo como objetos, que por sí mismos tienen sus propias características y acciones las cuales son representadas en los sistemas informáticos orientados a objetos, de tal forma que sea lo más parecido a la vida real.
Para entender la representación del mundo reflejada en los sistemas informáticos orientados a objetos será necesario remitirnos a los modelos.
Los modelos orientados a objetos son necesarios para comprender problemas del mundo real y representarlos en los sistemas.
Para ser más precisos y abstraer esta nueva forma de ver los sistemas informáticos podemos retomar conceptos básicos e indispensables para entrar al tema que nos interesa.
La abstracción
Se centra en las características esenciales de algún objeto, en relación a la perspectiva del observador.
Encapsulamiento
Oculta los detalles de la implementación de un objeto.
La modularidad
Empaqueta las abstracciones en unidades discretas
Jerarquía
Es una clasificación u ordenación de abstracciones
Concurrencia
Permite a diferentes objetos actual al mismo tiempo.
Persistencia
Conservar el estado de un objeto en el tiempo y en el espacio.
Estado
Un objeto tiene estado, exhibe algún comportamiento bien definido, tiene una identidad única.
Clase
Es una representación de un conjunto de objetos que comparten una estructura común y un comportamiento común
Vivimos en un mundo que se encuentra en constante movimiento, de igual forma los requerimientos cambian y surge la necesidad de responder a ellos de forma eficiente y eficaz, para no quedemos cortos con la gama de posibilidades que proporciona la evolución tecnológica.
Trabajar bajo el esquema orientado a objetos resulta más fácil de asimilar porque es una representación de lo que ya estamos acostumbrados, la realidad. La abstracción sin duda es importante para dejar de relacionarlo directamente con la informática y mejorar la comunicación entre diversos roles dentro del equipo de desarrollo y con el cliente.
A continuación se presentan los requerimientos para establecer las pautas de comparación, derivaciones e implicaciones de este paradigma reflejado en los sistemas.
1. Trabajar bajo el esquema orientado a objetos significa una reutilización de código, para extender las propiedades a otros objetos que así lo requieran, por lo tanto el paradigma Orientado a Objetos pone especial énfasis en la herencia y facilita mecanismos efectivos que permiten reutilizar aquello que es común.
2. El desarrollo escalable es otra de las bondades de esta metodología y va muy de la mano con el punto anterior, esto se refiere a ir añadiendo funcionalidad de forma simple, sin complicaciones y con el menor número de recursos.
3. Módulos diseñados para cubrir cada uno de los requerimientos del sistema, aplicando el dicho de “divide y vencerás”, cada uno de estos módulos realizan una tarea independiente y concreta, llevando así a la solución del problema principal teniendo una baja cohesión con otros módulos en las plataformas. Cabe señalar que ya no existe el concepto del programa principal.
4. En los sistemas, el realizar cambios sobre los requerimientos, notablemente se afecta al funcionamiento del sistema, pero bajo la metodología Orientada a objetos, este cambio afecta en menor medida a los objetos que componen los sistemas, en comparación estos cambios no afectan en tal magnitud como si se tratara de sistemas estructuradas.
Una nueva forma de programar exige una nueva forma de pensar y de abstraer los objetos para representarlos en os sistemas. Como se observo el cambio de paradigma significa la simplificación y entendimiento y solución de los problemas que forma parte de la vida cotidiana.