摘要:装饰模式 Person Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1public class Person { 2 3 private String name; 4 5 public Person() {} 6...
阅读全文
摘要:单一职责原则(SRP) 就一个类而言,应该仅有一个引起它变化的原因 如果一个类承担的职责过多,就等于吧这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭到意想不到的破坏 软件设计真正要做的许多内容,就是发现职责并把那些职责互相分离。如果你能想到多于一个的动机去改变一个类,那么这个类就具有多于一个的...
阅读全文
摘要:GOF的定义是:策略模式(Strategy),它定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户 以下是基本实现代码 Strategy Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1//抽象算法类...
阅读全文
摘要:简单工厂模式的根本就在于不是由客户端编程者来实例化对象,而且可以把选择需要实例化那一种对象的具体逻辑放入工厂之内,客户端只需要把需要实例化的对象的条件传入即可。 好处:可以把实例化这种细节封装在工厂里面 坏处:工厂想要扩展就需要修改工厂类的代码,违反了开放-封闭原则。 下面的代码是两个数的加减乘除,应用了简单工厂模式 具体计算类的抽象父类,对外的接口是接口或者抽象类有利于扩展,比如我想增加...
阅读全文