码迷,mamicode.com
首页 > 其他好文 > 详细

系统架构简单图解

时间:2015-07-04 19:39:38      阅读:301      评论:0      收藏:0      [点我收藏+]

标签:

软件开发为何需要进行合理的架构设计,原因很简单:实现高内聚、低耦合;对修改关闭,对扩展开放;

下面就用图表的形式简单介绍一下常见的架构形式,由于个人水平有限,可能存在不足,甚至出现错误的地方,还请大家指正,谢谢!

一、三层架构:

技术分享

优点:
  1、分工明确,开发人员可以只关注整个结构中的其中某一层;
  2、松耦合,改变了层与层之间的相互依赖,形成自下而上的依赖关系(也称依赖倒置),这样只要高层不改变,底层就不需要改变;
  3、重用性高,业务逻辑层与数据访问层可用在实现了相关接口的其它应用上;
  4、扩展性强,不同层负责不同的层面;
  5、安全性高。每层只能通过指定的入口访问指定的资源;
  6、项目结构更清楚,分工更明确,有利于后期的维护和升级
缺点:
  1、降低了系统的性能。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
  2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码
  3、增加了系统的复杂程度,从而增加了工作量

二、MVP架构:

技术分享

优点:

1.具备三层架构的优点;

2.前端开发人员与后端开发人员可分离(只要符合IView接口即可)并同步开发;

缺点:

1.降低了系统的性能;

2.有时会导致级联的修改,如果Model业务模型有更改,那到依赖它的Presenter有可能也要更改;

3.增加了系统的复杂程度,从而增加了工作量

 

三、MVC架构:

技术分享

优点:

待补充

缺点:

待补充

四、DDD领域驱动设计架构

技术分享

优点:

待补充

缺点:

待补充

 

系统架构简单图解

标签:

原文地址:http://www.cnblogs.com/zuowj/p/4621052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!