设计模式入门指南想知道设计模式是什么?在这篇文章中,我会解释为什么设计模式重要。我也会提供一些PHP的例子来解释什么时候什么情况下来使用设计模式。什么是设计模式?设
计模式是针对我们日常编程问题的经过优化的可重用的方法。一种设计模式不仅仅是可以简单集成到系统中的一个类或者一个库。它是一个只能在正确的...
分类:
其他好文 时间:
2014-07-22 23:11:13
阅读次数:
423
Non woven bags business conditions in the production process often appear to expand production scale, shorten the production cycle to produce more products, market share, in fact, corporate profits No...
分类:
其他好文 时间:
2014-05-13 15:39:48
阅读次数:
272
备忘录模式定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态
备忘录模式本质:保存和恢复内部状态
优点:更好的封装性,由于使用了内部类和窄接口,所以外部就算持有备忘录接口对象也无法访问其中的属性
备忘录模式中内部内和窄接口是最给力的设计,这样给把对象的接口给外部保存
但是接口中没有方法,所以外部无法访问,充分保证了封装性
只有创建它的原发器才可以设置和获取它的值...
分类:
其他好文 时间:
2014-05-13 14:09:45
阅读次数:
238
模板方法模式定义:
定义一个算法的骨架,而将步骤延迟到子类中。这种模式可以使得在不改变算法骨架(模板)的情况下修改每个步骤的具体实现
从功能上来看,这个模式跟生成器模式有些相像,只不过生成器模式定义了创建对象的过程,而模板方法模式定义了算法过程
.接口和抽象类
(1)接口是特殊的抽象类,接口中所有方法必须是抽象的,不能有具体实现;而抽象类中可以有实现的方法
(2)抽象类不一定包含抽象方法,有抽象方法的类一定是抽象类
(3)需要约束子类行为时用接口,既要约束子类行为,又要为其提供公共功能时用抽象类
模板方法模...
分类:
其他好文 时间:
2014-05-09 15:21:55
阅读次数:
324
迭代器模式定义:提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部实现
Iterator::迭代器接口。定义访问和遍历元素的接口
ConcreteIterator:具体的迭代器实现对象。实现对聚合对象的遍历,并跟踪遍历时的当前位置
Aggregate:聚合对象。定义创建相应迭代器对象的接口
ConcreteAggregate:具体聚合对象。实现创建相应的迭代器对象...
分类:
其他好文 时间:
2014-05-07 07:37:03
阅读次数:
313
观察者模式定义:定义对戏那个间的一种一对多的依赖关系
当一个对象的状态发生改变时,所有依赖它的对象都得到通知并被自动更新
还可以在notify方法中对状态进行判断,从而通知不同的观察者
观察者模式本质:触发联动
看了这个模式,感觉是不是跟微博的信息机制有一定的联系
当用户发送新微博时,把新信息推送给他的粉丝...
分类:
其他好文 时间:
2014-04-30 22:35:39
阅读次数:
221
代理模式的本质:控制对象访问
既然本质是控制对象访问,意思就是在访问者与原始对象之间加一个代理即可
同理,代理模式也可以通过继承原始类来实现,让访问者操作继承类,继承类来控制原始对象的访问
从而实现控制对象访问的目的
何时选用代理模式
1.需要为一个对象在不同的地址空间提供局部(重点)代表的时候,可以使用远程代理
2.需要按照需要创建开销很大的对象的时候,可以使用虚代理(即一个不完整的对象)
3.需要控制对原始对象的访问的时候,可以使用保护代理,上边即保护代理实例
4.需要在访问对象执行一些附加操作的时候,...
分类:
其他好文 时间:
2014-04-28 10:27:41
阅读次数:
253