Professional Documents
Culture Documents
La comprensión de los estilos arquitectónicos proporciona varios beneficios. El beneficio más importante
es que proporcionan un lenguaje común. También proporcionan oportunidades para conversaciones que
son la tecnología agnóstica. Esto facilita un mayor nivel de conversación que se incluyen todos los patrones
y principios, y sin entrar en detalles.
mayor seguridad. Todos los datos se almacenan en el servidor, que ofrece en general un mayor
control de la seguridad de las máquinas cliente.
acceso de datos centralizada. Dado que los datos sólo se almacenan en el servidor, el acceso y
actualizaciones de los datos son mucho más fáciles de administrar que en otros estilos
arquitectónicos.
Facilidad de mantenimiento. Los roles y responsabilidades de un sistema de computación se
distribuyen entre varios servidores que se conocen entre sí a través de una red. Esto asegura que
un cliente permanece inconsciente y no afectado por una reparación de servidores, actualización,
o la reubicación.
reutilizable. Los componentes son generalmente diseñados para ser reutilizados en diferentes
escenarios en diferentes aplicaciones.
Reemplazable. Los componentes se pueden sustituir fácilmente con otros componentes similares.
No contexto específico. Los componentes están diseñados para operar en diferentes entornos y
contextos.
Extensible. Un componente puede ser extendido a partir de componentes existentes para
proporcionar un nuevo comportamiento.
encapsulado. Componentes exponen interfaces que permiten a la persona que llama a utilizar su
funcionalidad, y no revelan detalles de los procesos internos o cualquier variables internas o
estado.
Independiente. Los componentes están diseñados para tener dependencias mínimos sobre otros
componentes.
Los tipos comunes de los componentes utilizados en aplicaciones incluyen componentes de interfaz de
usuario tales como las redes y los botones, y componentes auxiliares y de servicios públicos que exponen
a un subconjunto específico de funciones utilizadas en otros componentes.
Los siguientes son los principales beneficios de la arquitectura basada en componentes:
Comunicación. Todas las partes dentro de un equipo de desarrollo pueden utilizar el modelo de
dominio y las entidades que define para comunicar conocimientos y necesidades utilizando un
lenguaje de dominio de negocio común de negocios, sin que se requiera la jerga técnica.
Extensible. El modelo de dominio a menudo es modular y flexible, por lo que es fácil de actualizar
y ampliar las condiciones y requisitos cambian.
comprobable. Los objetos del modelo de dominio son débilmente acoplados y cohesiva, lo que les
permite ser probados más fácilmente.
Considere DDD si tiene un dominio complejo y desea mejorar la comunicación y el entendimiento dentro
de su equipo de desarrollo, o en el que debe expresar el diseño de una aplicación en un lenguaje común
que todos los interesados puedan entender. DDD también puede ser un enfoque ideal si usted tiene
grandes y complejos escenarios de datos de la empresa que son difíciles de manejar utilizando otras
técnicas.
El estilo arquitectónico en capas se describe como una pirámide de reutilización invertida en la que cada
capa agrega las responsabilidades y abstracciones de la capa directamente debajo de ella. Las capas de una
aplicación pueden residir en la misma computadora física (el mismo nivel) o pueden distribuirse en
computadoras separadas y los componentes en cada capa se comunican con componentes en otras capas
a través de interfaces bien definidas.
Los principios comunes para los diseños que utilizan el estilo arquitectónico en capas incluyen: Abstracción,
Encapsulación, Capas funcionales claramente definidas, Alta cohesión, Reusable y Bajo acoplamiento.
Varios patrones de diseño admiten el estilo arquitectónico en capas. Por ejemplo, los patrones de
presentación separada abarcan un rango de patrones que manejan las interacciones del usuario desde la
interfaz de usuario, la presentación y la lógica de negocios, y los datos de la aplicación con los que trabaja
el usuario. Los siguientes son los principios clave de los patrones de presentación separados:
Separación de intereses: Los patrones de presentación separados dividen las preocupaciones del
procesamiento de la interfaz de usuario en roles distintos, por ejemplo, el patrón MVC tiene tres
roles: el Modelo, la Vista y el Controlador.
Notificación basada en eventos: El patrón Observer se usa comúnmente para proporcionar
notificaciones a la Vista cuando cambian los datos administrados por el Modelo.
Gestión delegada de eventos: El controlador maneja los eventos activados desde los controles de
UI en la Vista.
Los principales beneficios del estilo arquitectónico en capas y el uso de un patrón de presentación separada
son: Abstracción, Aislamiento, Manejabilidad, Performance, Reusabilidad y Testabilidad
Describe el principio de utilizar un sistema de software que puede recibir y enviar mensajes usando uno o
más canales de comunicación, de modo que las aplicaciones puedan interactuar sin necesidad de conocer
detalles específicos entre sí. Es un estilo para el diseño de aplicaciones donde la interacción entre
aplicaciones se logra pasando mensajes a través de un bus común. Un bus de mensajes proporciona la
capacidad de manejar:
Los diseños de bus de mensajes proporcionan una arquitectura conectable que le permite insertar
aplicaciones en el proceso, o mejorar la escalabilidad al conectar varias instancias de la misma aplicación
al bus. Las variaciones en el estilo del bus de mensajes incluyen:
Bus de servicios empresariales (ESB): Utiliza servicios para la comunicación entre el bus y los
componentes conectados a este.
Bus de servicio de Internet (ISB): Uso de identificadores uniformes de recursos (URI) y políticas
para controlar el enrutamiento de la lógica a través de aplicaciones y servicios en la nube.
Los principales beneficios del estilo arquitectónico del bus de mensajes son: Extensibilidad, Baja
complejidad, Flexibilidad, Bajo acoplamiento, Escalabilidad y Simplicidad de aplicación.