原文链接:http://docs.nopcommerce.com/display/nc/Inversion+of+Control+and+Dependency+Injection翻译 by:yersans,如有不妥,敬请指正,博主邮箱:zhanglei0591@qq.com。转载请注明出处。控制反转...
分类:
其他好文 时间:
2015-04-02 13:16:46
阅读次数:
161
2. 里氏替换原则:LSP(Liskov Substitution Principle)里氏替换原则,定义为只要父类出现的地方子类就可以出现,而且用子类替换后,程序也不会出现问题,使用者根本不用关心是父类还是子类。这也是我们java继承特性的一个表现。下面用个实际项目中遇到的一个简单的需求:现在有A...
分类:
编程语言 时间:
2015-04-02 01:06:44
阅读次数:
256
网上这个相关内容有很多,但是大都说的太复杂了,所以这里我想用一篇来对这六个原则做以概括和总结,1、单一职责原则(SRP:Single Responsibility Principle)...
分类:
其他好文 时间:
2015-04-01 23:53:26
阅读次数:
165
高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。
抽象不应该依赖于具体,具体应该依赖于抽象。
简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。...
分类:
其他好文 时间:
2015-04-01 22:04:30
阅读次数:
123
问题:
一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。
好处:
类的复杂性降低。
类的复用性变高。
可读性、可维护性高。...
分类:
其他好文 时间:
2015-04-01 22:03:39
阅读次数:
123
父类能用的地方子类也一定能用。
而子类能用的地方父类不一定能用。
子类可以扩展父类的功能,但不能改变父类原有的功能...
分类:
其他好文 时间:
2015-04-01 20:01:25
阅读次数:
116
迪米特法则(Law of Demeter)又叫作最少知识原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。
广义的迪米特法则在类的设计上的体现:
优先考虑将一个类设置成不变类。
尽量降低一个类的访问权限。
谨慎使用Serializable。(不懂)
尽量降低成员的访问权限。...
分类:
其他好文 时间:
2015-04-01 19:58:32
阅读次数:
139
使用多个专门的接口比使用单一的总接口要好。
一个类对另外一个类的依赖性应当是建立在最小的接口上的。
一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,用户使用就麻烦了。...
分类:
其他好文 时间:
2015-04-01 19:58:25
阅读次数:
135
对继承开放、对修改关闭(继承了就不能修改原来父类的方法)
Open for extension
Closed for modification...
分类:
其他好文 时间:
2015-04-01 19:57:43
阅读次数:
123
题意:求n个数的逆序对数,可以交换k次相邻的,所以求出原序列的逆序对后减去k即可。
思路:求逆序对有两种方法,归并排序和树状数组。逆序对的几种求法...
分类:
编程语言 时间:
2015-04-01 09:42:24
阅读次数:
296