面向对象是PHP5之后增加的功能,是PHP走向现代语言的一个标志。
在过程式设计时代,PHP以学习成本低、入门快的特点赢得很多WEB开发者的青睐,但同时也限制了PHP的发展。
借鉴Java和C++之后的PHP语言,在增加面向对象特性的同时,还保持着简便易懂的特点。
但是,如果只是使用了PHP的继承特性,并不是面向对象的设计,因为这并不能提高代码的重用性和灵活性。
不论是 PHP、Java还是C++编程语言,在编程的时候,我们所遇到的大部分问题,其实都已经被其他程序员一再的处理了。
设计模式提取了共同问题,定义了经过测试的解决方案,并描述了可能的结果。
也就是说,设计模式(Patterns)是一些可以在项目中重复使用的解决方案。
但是,设计模式并非像组件那样,能被合并来构建系统的固定的解决方案,它们是解决一般性问题的通用方法。
通俗来说,设计模式就是一些编程的套路,不是具体的攻防动作,是为设计更好系统设计的解决方案。
面向对象的原则是“组合优于继承”,因为组合可以以多种方式动态的处理任务。
虽然对象的组合会导致代码的可读性下降,但会让系统更加灵活,复用性更高。
设计模式是很多前辈花费大量精力总结的经验,是经过检验的高效的一系列对象组合方式。
市面上的设计模式介绍大部分是Java语言,本文特地整理一份PHP版的设计模式。
共12种经典的设计模式:
基础UML类图设计原则创建型模式简单工厂模式工厂模式抽象工厂模式单例模式结构型模式适配器模式组合模式外观模式代理模式行为型模式命令模式迭代器模式策略模式观察者模式总结
参考资料:
Design Patterns in Java Tutorial图说设计模式
php php培训 千锋PHP PHP学习
转载于:https://my.oschina.net/u/3508364/blog/1305236