23种设计模式总结

前言

设计模式属于系统架构,是程序员长期以来的经验总结,不是一门技术性语言。设计模式的作用就是让你的代码系统解耦合,可最大力度的提高系统灵活扩展性。当然用设计模式和不用设计模式也许都可以实现代码预期目的,但如果想要你的系统易于维护,考虑长远的发展的话,这种经验就不可或缺。不会偷懒的程序员不是好程序员,时间是很宝贵的。

分类(基本按照使用频率顺序排列,个性特点简语已归纳,如需详细了解请点击连接)

建议熟练掌握的几种设计模式

单例模式–单对象创建(创建型模式01)
单例模式适用于整个系统对象需要单一实例的场景,比如游戏系统的boss。使用单例模式可以避免重复实例化对象,避免重复创建回收出错而引起的一系列问题。

工厂方法模式–应用最广(创建型模式02)
工厂方法模式适用于批量生产对象,避免重复作业,比如游戏系统的源源不断的小怪。搭配原型模式可以大大提高效率,节省系统资源。

抽象工厂方法模式–不确定产品设计(创建型模式03)
抽象工厂方法模式与工厂方法模式的区别在于,抽象工厂管理的更加具体,比如工厂方法是一个小的车厂只按要求封装国产轮胎、国产引擎的汽车类,封装好后就批量生产这一种类型的汽车。而抽象工厂方法模式则是一个大型汽车生产商,他对各种引擎、轮胎都划分了国产、进口等种类,而生产汽车分为国产零件和进口零件。抽象工厂方法是工厂方法的升级版本,我们从代码也可以看到他们的耦合进一步降低了。

代理模式–你说我来做,反射帮大忙(结构型模式06)
代理模式适用于间接访问对象,代理模式应用到了jdk的反射机制,优点是动态代理不需要知道具体实现类就可以很好的完成某项工作,代理模式实际应用中很常见应熟练掌握。

适配器模式–我是万能胶(创建型模式05)
适配器模式灵活性在于可以根据需求转换原数据到需求数据,从Android的sdk中我们已经体会到了各种各样的Adapter的使用,可见这个模式也很重要。

观察者模式–众多通知,一步到位(行为模式06)
观察者模式实现了监听–通知的效果,我们的手机状态栏通知应用推送信息,也是这个原理。包括其他流行的聊天软件消息通知也不乏他的身影。其作用可见一斑。

装饰模式–动态添加装饰物(结构型模式03)
装饰模式要求对本体进行二次加工,在其基础之上添加新功能,从而实现自定义的目的。装饰器模式应用也很广泛,应熟练掌握。

外观模式–高层调用,删繁就简(结构型模式04)
外观模式讲究封装的使用,一个好的软件系统,不能让用户做很多操作,用户体验差是能直接拉低好感度的弊端。外观模式要求封装操作,使用者只需简单操作就可实现各种类之间的调用搭配,从而实现预期目的。

策略模式–条条大路通罗马(行为模式07)
策略模式适用于根据需求的不同而给出不同的对策。比如网站登入根据用户进入和管理员进入显示不同的界面。

总结
其他模式也很有用,并不是没说到就没有必要熟悉了。23设计模式就这些了,平时多使用就可以体会到他们的妙处何在了。文章如有不妥之处,欢迎指出批评,我会及时修正,谢谢。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值