面向对象设计与传统的面向过程设计有何不一样?你可能会认为最本质的区别是,面向对象的代码中有对象。这既不对,也没用。在PHP中,咱们常常会看到面向过程的代码也使用对象或者类中包含面向过程的代码。有对象并不意味着必定就是面向对象设计,即便是在Java等必须使用对象的编程语言中也同样。
面向对象代码和面向过程代码的根本区别在于职责的分配方式。面向过程代码采起的是一系列命令和方法调用的形式。控制代码每每负责不一样条件的处理。这种自上而下的控制会致使项目中出现重复代码以及依赖关系。经过将处理任务的职责从客户端代码转移到系统中的对象上,面向对象代码能够尽可能减小这些依赖关系。编程
摘录自:《深刻PHP:面向对象、模式与实践(第5版)》编程语言