Skip to content

dartagnanli/design-pattern

Repository files navigation

设计模式

单例模式

就我个人而言,一般情况下直接使用饿汉式就好了,如果明确要求要懒加载(lazy initialization)会倾向于使用静态内部类。

代理模式

代理模式 (proxy-pattern) 注:这里手写Proxy、InvocationHandler 了解了思想,但是手写还是不能完成,以后慢慢消化、练习,ヾ(◍°∇°◍)ノ゙

模板模式

优点

  • 提高代码复用性 将相同部分的代码放在抽象的父类中
  • 提高了拓展性 将不同的代码放入不同的子类中,通过对子类的扩展增加新的行为
  • 实现了反向控制 通过一个父类调用其子类的操作,通过对子类的扩展增加新的行为,实现了反向控制 & 符合“开闭原则”

缺点

  • 引入了抽象类,每一个不同的实现都需要一个子类来实现,导致类的个数增加,从而增加了系统实现的复杂度。

About

design-pattern 设计模式

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages