A diferencia de otros métodos, el diseño orientado por objetos (DOO) da como resultado un diseño el cual interconexiona los objetos de datos (elementos de datos) y las operaciones de procesamiento, de forma tal que encapsula la información y el procesamiento.
Singularidad del diseño orientado a objetos es porque tienen la capacidad de basarse en tres conceptos importantes del diseño de software:
- Abstracción.
- Ocultamiento de la información.
- Modularidad.
El desarrollo orientado a objetos es una nueva forma de pensar sobre el software basada en las abstracciones que existen en el mundo real. Pero, ¿qué es un objeto? Los objetos son entidades físicas o abstractas que se comportan ante ciertos estímulos, incluidos los externos y otros objetos específicos dentro del sistema.
Constructos básicos de la POO
- Objeto.
- Identidad del objeto.
- Clase.
- Métodos.
- Polimorfismo.
- Herencia
- Encadenamiento dinámico.
¿Qué se puede considerar como objeto?
- Persona
- Equipo Hardware
- Materiales
- Información
- Software
- Procesos
- Procedimientos
Tres conceptos claves para la calidad de un diseño (además de ser correcto, claro)
- Acoplamiento (bajo)
- Cohesión (alta)
- Principio abierto-cerrado (cumplir con el principio)