代码改变世界

分层(Layers)

2012-03-02 16:47  康杜  阅读(940)  评论(0编辑  收藏  举报

在软件架构中,往往会涉及到分层这个概念。而每个架构师、开发人员心中,层的名称和含义也不相同。不仅仅是我们如此,就是业界的大师们也是如此。这不,在Martin Flower的《Patterns of Enterprise Application Architecture 》也列出这些不同分层。

 

Brown Core J2EE Microsoft DNA Marinescu Nilsson
Presentation Client Presentation Presentation Consumer
Controller/mediator Presentation Business Application Consumer helper
Domain Business Data access Service Application
Data mapping Integration   Domain Domain
Data source Resource   Persistence Persistence access
        Public/Private stored procedures

 

 

还有一个Martin没有在他的书上列出的分层模式,但是却是我最推崇的Eric Evans的分层模式

User Interface
Application
Domain
Infrastructure

 

Eric Evans的Application对应Martin Fowler的Service Layer。