Al poco de llegar al mundo Java (bueno, no tan poco) me encontré con el patrón DTO (Data Transfer Object) o VO.
“Data transfer object (DTO), formerly known as value objects[citation needed] or VO, is a design pattern used to transfer data between software application subsystems. DTOs are often used in conjunction with data access objects to retrieve data from a database.”
Recuerdo que nunca creí que la supuesta ventaja que ofrecía (aislar el dominio de la presentación) fuese suficiente como para que duplicar clase tras clase…
…Recuerdo también las discusiones (con una cerveza eso sí) con otros compañeros que no osaban cuestionarse la Biblia de los J2EE Core Patterns.
Sin ánimo de discutir su utilidad (no lo haré sin una cerveza por delante) y la sobrecarga que acarrea al sistema (tengo datos que lo certifican :D) afortunadamente las aproximaciones ligeras al desarrollo (desde Grails a Spring ROO en el caso de Java) se lo han cuestionado también y han decidido transferir las mismas entidades hacia la capa de presentación.
Esta aproximación es ya ampliamente utilizada en el mundo Web tradicional, pero cuando hablamos de RIAs/clientes ricos (Flex, Swing, GWT,…) no es tan sencillo pasar esas mismas Entidades.
En un próximo post contaré como invocar a DAOs de Hibernate directamente desde Flex…sin toda esa capa absurda y sobrecargada que no hace falta para mantener tablas…


Replica a Patron EsternocleidoMastoideo Cancelar la respuesta