写给所有程序员_那些年我们常用的设计模式
来源:互联网 发布:网络奇谈 恐惧鸟 txt 编辑:程序博客网 时间:2024/06/06 10:49
写的不一定准,是个人的理解,方便找合适的设计模式来用。这篇写的不对的尽管喷,欢迎提建议。
工厂方法模式
使用工厂类间接创造某类对象,每个工厂类只创造一类对象。
抽象工厂
每个工厂类可以产生多种对象,多个工厂可以共享一个接口。
单例模式:
使用特殊方式,保证只存在唯一的对象。
建造者模式:
对象内部需要多种元素组成,但每个元素都可能要或不要。
原型模式:
某些对象的一些变量值相同,将已有对象的变量值拷贝到新的对象中。
适配器模式:
对象配置适配器,适配器实现接口,间接完成接口的匹配。
装饰器模式
装饰器类对对象进行操作,或操作组合,外部通过调用装饰器类间接处理对象。
代理模式
可直接操作对象或者通过代理操作对象,适合多个地方打开统一功能的地方。
外观模式
隐藏操作细节,暴露必要的接口。
桥接模式
多种类别划分,使用其中一个间接操纵方式连接其他的。
组合模式
树枝和树叶的关系,可完成层层叠加
享元模式
使用静态方式保持数据唯一,个人不大喜欢,因为java的垃圾回收会回收静态对象,唯一试用的大概是全局用户对象。
策略模式
临时装载一种计算方式,如骑行某段路程到达时间和自驾某段路程到达时间。
模板方法模式
继承抽象类的具体子类。
观察者模式(订阅者)模式
多个类关联一个类,这个类改变多个类也要改变。
迭代子模式(Iterator模式)
让普通的类可以使用Cursor
责任链模式
层层下发任务,下级处理,上级获取结果
命令模式
每个命令创建类,操作者接入命令就能完成操作。
备忘录模式
建立存档,需要回退时恢复到该状态。
状态模式
创建多个状态类,创建操作接口,当状态改变时修改状态并改变状态。
访问者模式
对于外部类的访问,创建特定的对象和方法,只为它提供其需要的有限数据。
中介者模式
协调多个元素的关联部分,完成多元素调度。
解释器模式
自定义小型编译器,对于不能重写运算符的编程语言比较有用。
- 写给所有程序员_那些年我们常用的设计模式
- 写给所有程序员_起个好名字是成功的一半
- 写给所有程序员_你的逻辑不要太贪心
- 写给所有程序员_回顾学习初期的五个为什么
- 写给所有程序员_要不要重构
- 写给那些浮躁的程序员
- 那些年我们常用的软件
- 写给所有程序员_寻求更优解_你值得更好的
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- 再次写给我们这些浮躁的程序员
- sublime3 文件头注释和函数注释 [ filehead DocBlocker ]
- hdu 1896 stones
- Android开发笔记: Android studio 实现国际化
- Android studio打包混淆编译的时候出现异常:transformClassesAndResourcesWithProguardForRelease
- 电影 《模仿游戏》
- 写给所有程序员_那些年我们常用的设计模式
- Java算法实现之快速排序
- 数据库MYSQL入门教程(1)——安装指南
- Django 博客
- (C++版)链表(四)——实现双向循环链表创建、插入、删除等简单操作
- git Please tell me who you are解决方法
- Oracle之回表消失,不取无用列
- 国内外常用JavaScript公共库CDN加速服务
- Nginx源码剖析--HTTP模块配置结构体在conf_ctx中的组织