
设计模式职责
仕兴
keep learning,不学习,何以进步
展开
-
单一职责原则(SRP:Single responsibility principle)
问题:一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。好处:类的复杂性降低。类的复用性变高。可读性、可维护性高。原创 2015-04-01 19:16:44 · 627 阅读 · 0 评论 -
里氏替换原则(Liskov Substitution Principle LSP)
父类能用的地方子类也一定能用。而子类能用的地方父类不一定能用。子类可以扩展父类的功能,但不能改变父类原有的功能原创 2015-04-01 19:29:18 · 716 阅读 · 0 评论 -
接口隔离原则(ISP--Interface Segregation Principle)
使用多个专门的接口比使用单一的总接口要好。一个类对另外一个类的依赖性应当是建立在最小的接口上的。一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,用户使用就麻烦了。原创 2015-04-01 19:35:04 · 618 阅读 · 0 评论 -
依赖倒置原则(Dependence Inversion Principle)
高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。抽象不应该依赖于具体,具体应该依赖于抽象。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。原创 2015-04-01 19:30:52 · 524 阅读 · 0 评论 -
迪米特法则(Law of Demeter)
迪米特法则(Law of Demeter)又叫作最少知识原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。广义的迪米特法则在类的设计上的体现:优先考虑将一个类设置成不变类。尽量降低一个类的访问权限。谨慎使用Serializable。(不懂)尽量降低成员的访问权限。原创 2015-04-01 19:40:36 · 552 阅读 · 0 评论 -
开闭原则(open-close principle)
对继承开放、对修改关闭(继承了就不能修改原来父类的方法)Open for extensionClosed for modification原创 2015-04-01 19:45:00 · 891 阅读 · 0 评论