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

(一)这尼玛是原则问题

时间:2015-11-06 12:57:11      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

 

设计模式?

干啥用的?能吃吗?

刚开始接触设计模式,我就是这样的感觉。完全不明白为啥要加这些。三层写的好好地,加着破玩意干啥。

直到,写出的代码越来越难改,自己看着都烦。

有啥好处?

代码越来越难改,说到底就是因为需求!!!需求越加越多,来回变,就会导致代码的庞大,难懂。

设计模式的出现,提高了代码的复用性,程序好修改,又好扩展添加。因为他有着自己的七大原则。

一、我只吃饭不刷碗!

我只负责吃饭,别叫我干别的事。刷碗别找我,收拾屋子别找我,干啥都别找我。

单一职责原则,一个类,他干的活只有一件事。如果一个类干活多了,这个类那天变心了,受影响的可就不止一个了。

二、别修,给我买新的!

不要修改我现在有的武器,你可以买更多武器给我。

开闭原则,一个实体(类,函数这些)。对扩展开放,对修改关闭。当有需求需要改变本身的时候,最好通过添加新的代码,来增强现有类型的行为。

可以提供一个固有的接口,然后所有可能发生变化的类实现该接口。比如提供一个手臂,在这个手臂的基础上加装加特林。突突突突突

三、儿啊,别动我的东西!

 儿啊,老子留给你的产业,你可别给我动了啊。可不能让其他人用不了啊。

里氏替换原则,子类不要轻易修改父类的方法,当子类替换掉父类的时候,程序的调用、行为必须是一样的。子类替换父类,照样能用,那么父类才是真正的复用,但子类可以在父类基础上添加新的行为。

儿子别动老子的遗产,想玩新花招,自己想着奔去。

四、我能做,别管我怎么做!

我能治感冒,具体治疗流程都是按照治感冒来的。

依赖倒置原则,抽象不应该依赖于细节,细节应该依赖于抽象。高层次的模块,不应该依赖于低层次的模块。

病毒性感冒,普通感冒。都属于感冒,病毒性感冒不应该依赖普通感冒的治疗流程。应依赖感冒这个总的治疗流程。

五、只吃饭不刷碗,发扬光大!

我只吃饭不刷碗,我得把这项壮举告诉所有人。

接口隔离原则,跟单一职责类似。只使用专门多个的接口,比就使用一个接口要好。不要让接口负责太多。把职责更好的分离,到不同的接口上。

只吃饭传出去也是只吃饭。不刷碗。

六、变形金刚是拼起来的!

三个变形金刚,可以拼成一个大。我们尽量玩这个大的。

合成复用原则,一个新的对象里面使用一些已有的对象,让他变成新对象的一部分。尽量使用合成,而不使用继承。

圆形,方形都属于图形,那么他们是继承。CPU,内存可以组装成电脑,那么他们是合成。

七、好奇害死猫!

我就知道我自己办的事就行了,其他人的事。我不想知道。

迪米特法则,一个对象应当对其他的对象尽可能少的了解。一个对象尽量少的与其他对象所接触,这样互相独立,修改模块的时候就会更加容易。

不要跟”陌生人“说话。

 


以上

是设计模式的七大主要原则:单一职责原则,开闭原则,里氏替换原则,依赖倒置原则,接口隔离原则,合成复用原则,迪米特法则。程序开发中应尽量按照这些模式进行开发,这样代码会更容易维护。

其中又分为:创建性(6种),结构型(7种),行为型(11种)。这24种模式。

往后我会一一举例。by~

 

(一)这尼玛是原则问题

标签:

原文地址:http://www.cnblogs.com/chenxygx/p/4940249.html

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