Urielmania

“El Mundo de Uriel… Pero la voz de todos”

Patrones de Diseño (Active Record vs DAO)

Cuando programamos, el uso de patrones de diseño esta a la orden del día. Dos de los patrones más utilizados en las aplicaciones son los patrones de persistencia y entre ellos destacan dos: Active Record y DAO.

Active Record

Este patrón de persistencia es quizás uno de los más habituales y es usado por frameworks como Rails. La idea detrás del patrón es bastante sencilla. Se trata de una clase que se encarga de implementar todas las operaciones de consulta y modificación de una tabla concreta de la base de datos.

650_1000_activerecord

Este patrón de diseño en un primer momento parece suficiente para abordar la mayor parte de las problemáticas. Sin embargo hay situaciones en las que necesitamos algo más de flexibilidad y capacidad de adaptación. Para ello existe el patrón DAO o Data Access Object.

Data Access Object

Este patrón de diseño divide más las responsabilidades en la aplicación de tal forma que tendremos unas clases que se encargaran de la lógica de negocio y otras clases la responsabilidad de persistencia.

650_1000_dao

Asi pues veces es difícil decidir que patrón de diseño elegir para nuestra casuística. Cuanto mayor flexibilidad necesitemos en la capa de persistencia más nos encajará el uso de un patrón DAO. Cuanto mas aislada este la aplicación y menos flexibilidad necesite más nos encajará un Active Record y ustedes que Patron de Diseño prefieren?

Lo vi en http://www.genbetadev.com/

Acerca del Autor