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

软件面向对象的架构设计基本原则

时间:2016-07-02 10:24:09      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

1,单一职责原则

要求:对象职责明确,一个对象只做好一件事情,必须专注,职责过多容易引起变化的原因就多,程序就不够稳定。

2,开放封闭原则

要求:需求变化时尽量少的修改类的设计,而是通过扩展来完成。即封闭修改,开放扩展。

3,依赖倒置原则

要求:基于接口编程,高层模块调用接口,底层模块实现接口,防止底层变化直接影响高层。

        IOC,AOP等技术框架最早的成熟应用源自JAVA企业开发,现在.NET领域发展也非常迅速,常见的框架有如下等:

        Autofac下载地址:http://code.google.com/p/autofac/

        Castle Windsor下载地址:http://sourceforge.net/projects/castleproject/files/Windsor/2.5/Castle.Windsor.2.5.3.zip/download

        Unity下载地址:http://entlib.codeplex.com/

        Spring.NET下载地址:http://www.springframework.net/

        StructureMap下载地址:http://sourceforge.net/projects/structuremap/files/

        Ninject下载地址:http://ninject.org/download

        如使用以上现有广泛应用的框架,Spring.Net源自JAVA的Spring,功能更完整强大,Autofac与Ninject更清晰友好,个人推荐使用Autofac+其它框架组合使用。

4,接口隔离原则

要求:尽可能多的使用专有的小接口,而不是总接口,避免接口过于复杂。

5,里氏替换原则

要求:在继承关系中子类可以替换父类,虚拟机根据父类变量动态找到具体子类对象,从而实现多态(即是以前C++编译器技术中的晚期绑定)。

 

注:尺有所短,寸有所长;各种技术、框架及设计方法有其各自所对应的时代和特点,最好的往往都不是瑞士军刀,要避免陷入某一种思维方式的沉浸而不可改变。

软件面向对象的架构设计基本原则

标签:

原文地址:http://www.cnblogs.com/yuyuanfeng/p/5634793.html

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