随笔分类 -  php设计模式

摘要:工厂模式:由工厂类根据参数来决定创建出哪一种产片类的实例工厂类:一个专门用来创建其他对象的方法类。即按需分配,传入参数进行选择,返回具体的类作用:对象创建的封装、简化创建对象的操作,即调用工厂类的一个方法来得到需要的类补充:1.主要角色:抽象产品(Product)、具体产品(Concrete Product)、抽象工厂角色(Creator)2.优缺点 优点:工厂方法模式可以允许系统在不修改工厂角色的情况下引进心产品 缺点:客户可能仅仅为了创建一个特定的Concrete Product对象,就不得不创建一个Creator子类3.适用性 当一个类不知道它所必须创建的对象的时候 当一个类希望... 阅读全文
posted @ 2013-06-09 11:59 Honoir 阅读(154) 评论(0) 推荐(0)
摘要:介绍 现在有两派,有的人建议使用设计模式,有的人不建议使用设计模式!这就向写文章一样,有的人喜欢文章按照套路走,比如叙事性质的文章,时间,地点,人物,事件。而有的人喜欢写杂文或者散文,有的人喜欢写诗词!现在写代码很多地方类似于写文章,但是在有些地方比写文章需要更多的技能!写文章写多了一般也能写出优秀的文章,而代码也一样,写多了也能写出很多有些的代码!很多时候,我看设计模式的时候,有些设计模式只是吻合我的代码习惯。但是你硬去套它,那么反而适得其反。——很多时候是学会了招式,在应用中不知不觉的使用上这些招式,才能掌握其道,但是也不要拘泥于招式,正所谓“无招胜有招”吗?我学设计模式的初衷,就是知道有 阅读全文
posted @ 2013-06-06 11:04 Honoir 阅读(157) 评论(0) 推荐(0)
摘要:<转川山甲>介绍装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。思维导图有这样一个项目,做一个餐厅订餐系统。起初的代码结构是这样的。前面有很多Beverage的继承类,现在遇到的问题是牛奶的价钱上涨了,那么所有 相关的类,我们都要进行调整,比如Milk,SugarAndMilk类,这种类还有很多,我们需要逐个去修改类中的方法——开发人员每次都做这种事情, 要疯了!所以我们要改变现有的结构。以下的图都是简图,实际的图,可没有这么简单。设计问题:1》类数量爆炸,有很多类,难以维护;2》整个设计呆板;3》基类加入的新功能无法使用于子类;复用类方法的 阅读全文
posted @ 2013-06-06 10:57 Honoir 阅读(174) 评论(0) 推荐(0)