2011-09-07 52 views

回答

5

传统的N层架构的替代方案是Udi Dahan所讨论的Command-Query Responsibility Segregation(CQRS)架构。

就像你真的应该想想,当用它作为讨论here

个人所有的架构决策,我往往会看到很多"over architecture"在我的软件传播这才能真正在使问题复杂化,使事情变得更加困难维护费用明显更高。你首先需要考虑很多关于业务问题的问题,而不是仅仅选择一个架构。

让事情尽可能简单,以获得最佳结果和轻松重构。

5

人们总是应该将Web应用程序分离出来吗?

你应该分开你的系统的不同逻辑部分,以避免它们被紧密耦合果然使他们更可重复使用。分离它们并不是那么重要。你可以叫它或其他什么。

其实有可能是这些层的2个含义:

  1. 物理边界:客户端浏览器,Web服务器,Web服务的服务器,后端数据库,...
  2. 逻辑边界:GUI,服务层, DAL,...

您也可以查看Onion Architecture。但洋葱仍然有层:-)

+5

标准约定使用**层**作为物理边界,**层**使用逻辑边界。 –

2

对分层体系结构有另一种“模式”。

但这是分层架构试图解决的反模式。即“泥球大球”:)

+0

好点@Shiraz Bhaiji – vikingben