0% encontró este documento útil (0 votos)
1K vistas11 páginas

Patrones de Diseño Emergentes en Software

Este documento resume brevemente seis patrones de diseño emergentes: MVC, DAO, CQRS, DDD, MVVM y MVP. MVC separa la interfaz de usuario, la lógica y los datos. DAO provee una interfaz abstracta para acceder a datos. CQRS divide la aplicación en modelos de lectura y escritura separados. DDD se enfoca en modelar el dominio del negocio. MVVM desacopla la interfaz de usuario de la lógica. MVP también separa la interfaz, lógica y datos pero con

Cargado por

Frederick Guzman
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
1K vistas11 páginas

Patrones de Diseño Emergentes en Software

Este documento resume brevemente seis patrones de diseño emergentes: MVC, DAO, CQRS, DDD, MVVM y MVP. MVC separa la interfaz de usuario, la lógica y los datos. DAO provee una interfaz abstracta para acceder a datos. CQRS divide la aplicación en modelos de lectura y escritura separados. DDD se enfoca en modelar el dominio del negocio. MVVM desacopla la interfaz de usuario de la lógica. MVP también separa la interfaz, lógica y datos pero con

Cargado por

Frederick Guzman
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

lOMoARcPSD|19593527

Patrones De Diseño Emergentes

Programación III (Universidad Tecnológica de Guadalajara)

Studocu is not sponsored or endorsed by any college or university


Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)
lOMoARcPSD|19593527

UNIVERSIDAD

TECNOLOGÍAS DE LA INFORMACIÓN Y
COMUNICACIÓN

PATRONES DE DISEÑO
EMERGENTES

RESUMEN

MOR., DICIEMBRE DE 2020

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

INDICE

INDICE ............................................................................................................ 2

INTRODUCCION ............................................................................................ 3

DESARROLLO ............................................................................................... 4

MVC ..................................................................................................................... 4

DAO ..................................................................................................................... 5

CQRS .................................................................................................................. 6

DDD ..................................................................................................................... 7

MVVM .................................................................................................................. 8

MVP ..................................................................................................................... 9

CONCLUSION .............................................................................................. 10

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

INTRODUCCION

En el presente trabajo se dará a conocer de forma resumida los patrones de diseño


emergentes tales como MVC, DAO, CQRS, DDD, MVVM y MVP.

Estos mismos patrones serán detallados de manera individual. De esta misma forma
es como cada patrón tiene su información detallada como su definición, sus
características, ventajas, desventajas y entre muchas otras cosas más, misma
información individual será englobada y a si mismo será recopilada y mostrada de
manera general y resumida dándonos una idea de lo que se tratan estos patrones
de diseño emergentes.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

DESARROLLO

MVC

El Model View Controller es considerado un patrón de diseño de software, lo que


hace es separar la interfaz de usuario, la lógica y los datos en tres componentes
diferentes.

Este nace con la necesidad de crear sistemas de software que contenga un ciclo de
vida mas practico, que permita un mantenimiento mas eficaz y con la opción de
reutilizar código esto por la separación de componentes.

Sus componentes son:


Modelo: Es la representación de la información con la cual el sistema opera y
gestiona.

Vista: Se representa en un modelo adecuado para interactuar con el usuario. Se


trabajan con los datos los cuales devuelven una respuesta.

Controlador: responde a los eventos que son solicitados. Es el enlace entre las
vistas y los modelos.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

DAO

Se conoce como un patrón que provee una interfaz abstracta de una base de datos
o algún otro mecanismo de persistencia. A través de un objeto DAO se administra
la conexión con el recurso de información para obtener y guardar datos.

Su estructura esta conformada por BusinessObject, DataAccessObject, DataSource


y TransferObject.

BusinessObject: Representa el cliente de datos, Es el objeto que requiere acceso al


origen de datos para obtener y almacenar datos.

DataAccessObject: Es el objeto principal de este patrón, el DataAccessObject


abstrae la implementación de acceso a datos subyacente para BusinessObject.

DataSource: Representa el origen de los datos los cuales podrían ser una base de
datos como un RDBMS, OODBMS, repositorios XML, sistemas de archivos de
formato.

TransferObject: Es un objeto de transferencia a en el cual los datos se almacenan.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

CQRS

Command Query Responsibility Segregation (Segregación de Responsabilidad de


Consultas de Comando). Es un patrón de diseño emergente que se basa en dividir
en dos modelos de implementación: lectura y escritura.

El modelo de escritura, es aquella que se encarga de actualizar la base de


datos y el modelo de lectura únicamente se encargará de consultarla.

Modelo de escritura
• Aggregate
• Commands
• Dominios de escritura
• Repositorio de escritura

Modelo de lectura
• Projection
• Queries
• Dominios de lectura
• Repositorio de lectura

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

DDD

Es un patrón de diseño con un enfoque basado en dominios (domains), para


necesidades complejas, haciendo un enfoque en el dominio principal, los aspectos
del modelo y el núcleo del negocio.

Domain
El dominio en términos de DDD, es el problema de negocio para el que se está
diseñando la solución.

Core Domain
El diferenciador clave para el negocio del cliente: algo que deben hacer bien y no
pueden subcontratar.

Sub-Domain
Separan las características o aplicaciones que su software debe admitir o debe
interactuar.

¿Para qué sirve?


Sirve para representar 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.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

MVVM

Es un patrón de de diseño de software desarrollado por Microsoft en el 2008.

Se caracteriza por tratar de desacoplar lo máximo posible la interfaz de usuario de


la lógica de la aplicación.

Este mismo se compone en 3 estructuras las cuales son:

Modelo
Encargado de representar el modelo del negocio, proveyendo de esta manera la
base necesaria para la manipulación de los datos de la aplicación.

Vista
Encargada de la parte visual de nuestra aplicación, sin ocuparse en el manejo de
datos.

Vista-Modelo
Encargado de ser la capa intermedia entre el modelo y la vista, procesando todas
las peticiones que tenga la vista hacia el modelo.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

MVP

Modelo-vista-presentador (MVP) es una derivación del patrón arquitectónico


modelo-vista-controlador (MVC) y se usa principalmente para construir interfaces
de usuario.

Este mismo posee 3 capas las cuales son:

Modelo: Esta capa gestiona los datos. Son las clases que denominaremos de lógica
de negocio.

Vista: Se encarga de mostrar los datos. Aquí se encontrarán nuestros Fragmentos


y Vistas.

Presentador: Se sitúa entre el modelo y la vista, permitiendo conectar la interfaz


gráfica con los datos.

Por otra parte, este mismo también cuenta con 2 modos los cuales son:
MVP como Controlador Supervisado: se puede tener un presentador que no
gestione la información de la vista, es la misma vista quién gestiona toda su lógica.

MVP como Vista Pasiva: es posible hacer que el presentador gestione en su


totalidad la información de la vista, en pocas palabras, hace que la vista no tenga
ninguna lógica, limitándose a sólo mostrar datos.

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)


lOMoARcPSD|19593527

CONCLUSION

En conclusión, podemos decir que estos patrones de diseño mostrados


anteriormente son propuestas para dar soluciones a problemas que surgen
comúnmente, aunque estas son enfocadas mas a estructuras y en como se
desarrolla el código mismo o a su vez productos de software.

Como bien sabemos no solo podemos utilizar un solo patrón si no que es posible
utilizar mas de uno y así adaptarlos a nuestras propias necesidades todo con su
debida medida y teniendo un conocimiento basto de ambos patrones para que todo
surja de una manera excelente.

Gracias a todos estos patrones un producto de software puede llevar su


estandarización de mejora tanto desde documentación hasta el código del mismo y
así llevar a cabo el producto de la manera más eficaz posible.

10

Downloaded by Frederick Guzman (frederickguzman2236@gmail.com)

(https://www.studocu.com/en-us?utm_campaign=shared-document&utm_source=studocu-document&utm_medium=social_sharing&utm_conten
UNIVERSIDAD  
 
 
TECNOLOGÍAS DE LA INFORMACIÓN Y 
COMUNICACIÓN 
 
 
PATRONES DE DISEÑO 
EMERGENTES 
 
 
 
 
 
 
RESUMEN
2 
 
 
 
 
INDICE ...........................................................................................................
3 
 
 
 
En el presente trabajo se dará a conocer de forma resumida los patrones de diseño 
emergentes tales como MVC, DAO, C
4 
 
 
 
 
MVC 
 
El Model View Controller es considerado un patrón de diseño de software, lo que 
hace es separar la interfa
5 
 
DAO 
 
Se conoce como un patrón que provee una interfaz abstracta de una base de datos 
o algún otro mecanismo de persis
6 
 
CQRS 
 
Command Query Responsibility Segregation (Segregación de Responsabilidad de 
Consultas de Comando). Es un patrón
7 
 
DDD 
 
Es un patrón de diseño con un enfoque basado en dominios (domains), para 
necesidades complejas, haciendo un enfo
8 
 
MVVM 
 
Es un patrón de de diseño de software desarrollado por Microsoft en el 2008. 
 
Se caracteriza por tratar de des
9 
 
MVP 
 
Modelo-vista-presentador (MVP) es una derivación del patrón arquitectónico 
modelo-vista-controlador (MVC) y se u

También podría gustarte