2011-09-07 17 views

Respuesta

5

Una alternativa a la arquitectura tradicional N-tiered es la arquitectura Command-Query Responsibility Segregation (CQRS) según lo discutido por Udi Dahan.

Al igual que todas las decisiones arquitectónicas que realmente debe pensar en la hora de utilizarlo como discutido here

Personalmente, tiendo a ver un montón de "over architecture" en mi software viaja que realmente puede complicar más las cosas y hacer las cosas mucho más difíciles para mantener y obviamente cuesta mucho más. Realmente necesita pensar mucho sobre el problema del negocio primero en lugar de solo elegir una arquitectura.

Mantenga todo lo simple posible para obtener mejores resultados y una fácil refactorización.

5

¿Es siempre así que uno debe separar las aplicaciones web en capas?

Debe separar las diferentes partes lógicas de su sistema para evitar que estén estrechamente acopladas, lo que las hace más repetibles y reutilizables. En lo que los separa no es tan importante. Puede llamarlo capas o lo que sea.

En realidad podría haber 2 significados de esas capas:

  1. límites físicos: navegador del cliente, servidor web, servidor de servicios web, bases de datos back-end, ...
  2. límites lógicos: interfaz gráfica de usuario, la capa de servicio, DAL, ...

También puede consultar el Onion Architecture. Pero las cebollas todavía tienen capas :-)

+5

La convención estándar usa ** niveles ** para límites físicos y ** capas ** para límites lógicos. –

3

Se recomienda encarecidamente leer Microsoft Application Architecture Guide, 2nd Edition.

Luego, se dará cuenta de la importancia de la separación para cada sitio que tiene más de 2 páginas web simples o más.

Es una guía completa que explica los roles y responsabilidades de cada capa y cómo todos ellos juegan juntos en una aplicación escalable & robusta.

No tiene que leerlo todo, pero al principio eche un vistazo a Chapter 5: Layered Application Guidelines.

2

Hay un "patrón" alternativo para la arquitectura en capas.

Pero es el patrón anti que la arquitectura en capas está tratando de resolver. A saber, "Big Ball Of Mud" :)

+0

buen punto @Shiraz Bhaiji – vikingben

Cuestiones relacionadas