学习笔记
文章平均质量分 73
coding_sloth
good good study, day day up
展开
-
【Head First设计模式】策略模式
策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。把会变化的部分取出来并封装起来,以便以后可以轻易地改动或扩充此部分,而不影响不需要变化的其它部分。设计原则:针对接口编程,而不是针对实现编程。针对接口编程意味着针对超类型(Supert原创 2013-12-28 22:05:52 · 865 阅读 · 0 评论 -
【HeadFirst 设计模式】观察者模式
观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式的类图:设计原则:为了交互对象之间的松耦合设计而努力。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。主题只知道观察者实现了某个接口(Observer接口)。主题不需要知道观察者的具体类是谁、做了些什么或其它任何细节。松耦合的设计之所以原创 2014-01-03 00:02:20 · 857 阅读 · 0 评论 -
【HeadFirst设计模式】装饰者模式
装饰者模式:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。设计原则:类应该对扩展开放,对修改关闭。我们的目标是允许类容易扩展,在不修改现有代码的情况下,就可搭配新的行为。这样的设计具有弹性可以应对改变,可以接受新的功能来应对改变的需求。类图ConcreteComponent是我们要动态地加上新行为的对象,它扩展自Compone原创 2014-01-09 00:26:19 · 957 阅读 · 0 评论 -
【HeadFirst设计模式】单件模式
单件模式确保一个类只有一个实例,并提供一个全局访问点。以下为使用“双重检查加锁“,在getInstance()中减少使用同步的单件模式代码public class Singleton(){ //构造器声明为私有的,只有自Singleton类内才可以调用构造器 private Singleton() {} //用静态方法实例化对象,并返回这个实例对象 public st原创 2014-01-21 22:02:16 · 900 阅读 · 0 评论 -
【HeadFirst设计模式】工厂模式
简单工厂简单工厂不是一个设计模式,反而比较像是一种编程习惯。Pizza简单工厂类图PizzaStore是工厂的“客户”,PizzaStore通过SimplePizzaFactory取得pizza实例。SimplePizzaFactory类中的createPizza()方法通常为静态方法。Pizza通常定义为抽象类,具有一些有用的实现,这些实现可以被覆盖。工厂原创 2014-01-16 22:57:36 · 1024 阅读 · 0 评论