|
7 | 7 | ## 简述
|
8 | 8 | 该项目通过分析Android系统中的设计模式来提升大家对设计模式的理解,从源码的角度来剖析既增加了对Android系统本身的了解,也从优秀的设计中领悟模式的实际运用以及它适用的场景,避免在实际开发中的生搬硬套。如果你对面向对象的六大开发原则还不太熟悉,那么在学习模式之前先学习一下[面向对象的六大原则](oop-principles/oop-principles.md)是非常有必要的。
|
9 | 9 |
|
10 |
| -**<font color="red">每一个模式在Android源码中可能有很多个实现,因此我们为每个模式创建一个文件夹,就是为了同一个模式可以有多个人分析,这样我们就可以从更多的源码中学习对应的模式,具体请参考[编写步骤](#steps)。我们的原则是通过分析这些源码不仅要学会设计模式本身,而且要通过学习该模式深入到Android源码层的实现,这样不仅学了设计模式,也增加了我们对于Android源码的了解。</font>** |
11 |
| - |
12 |
| -**<font color="red">QQ交流群: 413864859,希望大家踊跃参与进来。</font>** |
13 |
| - |
14 |
| -<b id="steps"></b> |
15 |
| -## 编写步骤 |
16 |
| -1. 填写[任务表](#schedule); |
17 |
| -2. 在模式对应的文件夹下以你的用户名建立一个文件夹,例如我分析的是适配器模式,那么我在adapter目录下建立一个mr.simple文件夹; |
18 |
| -3. 将template.md拷贝一份到adapter/mr.simple目录下,并且重命名为readme.md; |
19 |
| -4. 所需图片统一放到你的用户名文件夹的images目录下,例如adapter/mr.simple/images; |
20 |
| -5. 按照[template.md](template.md)的格式将模式分析的markdown文件编写完毕; |
21 |
| -6. 提交本地修改,将本地的提交push线上。 |
22 |
| - |
23 |
| -样例大家可以参考[Mr.Simple的单例模式分析](singleton/mr.simple)。 |
24 |
| - |
25 | 10 | <b id="schedule"></b>
|
26 | 11 | ## 任务表 ( 一期截止 2015.3.20 )
|
27 | 12 | | 模式名 | 分析者 | 状态 |
|
|
34 | 19 | | [观察者模式](observer/mr.simple) | [Mr.Simple](https://github.com/bboyfeiyu) | 完成 |
|
35 | 20 | | [策略模式](strategy/gkerison) | [GKerison](https://github.com/GKerison) | 完成 |
|
36 | 21 | | [代理模式](proxy/singwhatiwanna) | [singwhatiwanna](https://github.com/singwhatiwanna) | 完成 |
|
37 |
| -| [组合模式](composite/tiny-times) | [tiny-times](https://github.com/tiny-times) | 撒丫子赶稿中 | |
38 |
| -| [装饰模式](decorator/tiny-times) | [tiny-times](https://github.com/tiny-times) | 撒丫子赶稿中 | |
39 | 22 | | [迭代器模式](iterator/haoxiqiang) | [Haoxiqiang](https://github.com/Haoxiqiang)| 完成 |
|
40 | 23 | | [责任链模式](chain-of-responsibility/AigeStudio) | [AigeStudio](https://github.com/AigeStudio)| 完成 |
|
41 |
| -| [状态模式](state/Thinan) | [Thinan](https://www.github.com/Thinan)| 撒丫子赶稿中 | |
42 |
| -| [命令模式](command/lijunhuayc) | [lijunhuayc](https://github.com/lijunhuayc)| 待审核 | |
| 24 | +| [命令模式](command/lijunhuayc) | [lijunhuayc](https://github.com/lijunhuayc)| 完成 | |
43 | 25 | | [桥接模式](bridge/shen0834) | [shen0834](https://github.com/shen0834)| 完成 |
|
44 | 26 | | [原型模式](prototype/mr.simple) | [Mr.Simple](https://github.com/bboyfeiyu)| 完成 |
|
45 | 27 |
|
46 |
| - |
47 |
| - |
48 |
| -## 目前无人认领的模式 |
49 |
| -| 模式名 | |
50 |
| -| ------------- | |
51 |
| -| 中介者模式 | |
52 |
| -| 备忘录模式 | |
53 |
| -| 解释器模式 | |
54 |
| -| 访问者模式 | |
55 |
| - |
56 |
| -## 模式与文件夹对应列表 |
57 |
| -| 模式名 | 文件夹 | |
58 |
| -| ------------- |:-------------:| |
59 |
| -| 适配器模式 | [adapter](adapter) | |
60 |
| -| 抽象工厂模式 | [abstract-factory](abstract-factory) | |
61 |
| -| 桥接模式 | [bridge](bridge) | |
62 |
| -| Builder模式 | [builder](builder) | |
63 |
| -| 责任链模式 | [chain-of-responsibility](chain-of-responsibility) | |
64 |
| -| 命令模式 | [command](command) | |
65 |
| -| 组合模式 | [composite](composite) | |
66 |
| -| 装饰模式 | [decorator](decorator) | |
67 |
| -| 外观模式 | [facade](facade) | |
68 |
| -| 工厂方法模式 | [factory-method](factory-method) | |
69 |
| -| 解释器模式 | [interpreter](interpreter) | |
70 |
| -| 迭代器模式 | [iterator](iterator) | |
71 |
| -| 中介者模式 | [mediator](mediator) | |
72 |
| -| 备忘录模式 | [memento](memento) | |
73 |
| -| 观察者模式 | [observer](observer) | |
74 |
| -| 原型模式 | [prototype](prototype) | |
75 |
| -| 代理模式 | [proxy](proxy) | |
76 |
| -| 单例模式 | [singleton](singleton) | |
77 |
| -| 状态模式 | [state](state) | |
78 |
| -| 策略模式 | [strategy](strategy) | |
79 |
| -| 模板方法模式 | [template-method](template-method) | |
80 |
| -| 访问者模式 | [visitor](visitor) | |
81 |
| - |
82 | 28 | ## 参考资料
|
83 | 29 | * [GOF的设计模式:可复用面向对象软件的基础](http://item.jd.com/10057319.html)
|
84 | 30 | * [设计模式之禅](http://item.jd.com/11414555.html)
|
|
0 commit comments