PATRONES EMERGENTES

¿Qué son los patrones de diseño y porque debemos usarlos?

Los patrones de diseño (design patterns) son elementos reutilizables creados para resolver problemas comunes. Es decir que con su aplicación y utilización podremos corregir diferentes problemas que presenta nuestro código de una manera segura, estable y testeada por cientos de programadores de todo el mundo.


1. MVC:

MVC (Modelo-Vista-Controlador) es un patrón en el diseño de software comúnmente utilizado para implementar interfaces de usuario, datos y lógica de control. Enfatiza una separación entre la lógica de negocios y su visualización. Esta "separación de preocupaciones" proporciona una mejor división del trabajo y una mejora de mantenimiento. Algunos otros patrones de diseño se basan en MVC, como MVVM (Modelo-Vista-modelo de vista), MVP (Modelo-Vista-Presentador) y MVW (Modelo-Vista-Whatever).

Ejemplo de Modelo Vista Controlador (MVC)


2. DAO:

Patrón Arquitectónico Data Access Object (DAO), el cual permite separar la lógica de acceso a datos de los Objetos de negocios (Bussines Objects), de tal forma que el DAO encapsula toda la lógica de acceso de datos al resto de la aplicación.



Ejemplo de DAO


3. CQRS:

CQRS significa segregación de responsabilidades de comandos y consultas, un patrón que separa las operaciones de lectura y actualización de un almacén de datos. La implementación de CQRS en la aplicación puede maximizar el rendimiento, la escalabilidad y la seguridad. La flexibilidad creada al migrar a CQRS permite que un sistema evolucione mejor con el tiempo y evita que los comandos de actualización provoquen conflictos de combinación en el nivel de dominio.



Ejemplo de patrón CQRS


4. DDD:

Domain Driven Design (desde ahora DDD) es un enfoque de desarrollo de software utilizado por Eric Evans en su libro “ Domain-Driven Design — Tackling Complexity in the Heart of Software, 2004”. Representa distintas claves, terminología y patrones utilizados para desarrollar software donde el dominio es lo más central e importante de una determinada organización.


Ejemplo de DDD


5. MVVM:

El patrón MVVM ayuda a separar limpiamente la lógica de presentación y negocios de una aplicación de su interfaz de usuario (UI). Mantener una separación limpia entre la lógica de la aplicación y la interfaz de usuario ayuda a abordar numerosos problemas de desarrollo y facilita la prueba, el mantenimiento y la evolución de una aplicación. También puede mejorar considerablemente las oportunidades de reutilización del código y permite a los desarrolladores y a los diseñadores de la interfaz de usuario colaborar más fácilmente al desarrollar sus respectivas partes de una aplicación.


Ejemplo de MVVM


6. MVP:

El Modelo Vista Presentador (En español) es uno de los patrones de arquitectura de desarrollo más comunes y usados en el desarrollo nativo de Android. La necesidad de utilizar este patrón surge debido a lo complicado que puede llegar a ser el mantenimiento y escalamiento de un proyecto que va creciendo a lo largo del tiempo y líneas de código. El uso de esta arquitectura lleva a que cualquier persona pueda fácilmente mejorar, actualizar, modificar o arreglar cualquier parte de la aplicación. Si bien aunque el patrón MVP establece una serie de lineamientos, debemos tener en cuenta que cada proyecto puede llegar a implementarlo con algunas variaciones, por lo que no es una solución absoluta.


Ejemplo de MVP


Fuentes:



Comentarios

Popular Posts

Tipos de arquitecturas de software

PARCIAL II: PROTOTIPO APLICACIÓN