我为什么要使用类而不仅仅是函数集合?

Joe*_*ssi 8 php oop class

可能重复:
OO编程有哪些好处?它会帮我写出更好的代码吗?
OO PHP解释为脑死亡n00b

刚刚开始学习/玩PHP创建类,我想知道他们解决了什么样的痛苦?似乎我可以通过我包含在文件中的一组函数完成相同的工作.所以我的问题是:我为什么要使用课程?

Way*_*man 5

面向对象程序设计的三大支柱.好好学习:

http://codeidol.com/csharp/learncsharp2/Object-Oriented-Programming/The-Three-Pillars-of-Object-Oriented-Programming/

封装

面向对象编程的第一个支柱是封装.封装背后的想法是,您希望保持每个类型或类的谨慎和自包含,以便您可以更改一个类的实现而不影响任何其他类.

专业化

面向对象编程的第二个支柱,即专业化,是通过继承实现的; 特别是通过声明一个新类派生自现有类.专门的类继承了更通用的类的特性.专用类称为派生类,而更通用的类称为基类.

派生类型不是将代码从一种类型剪切并粘贴到另一种类型,而是继承共享字段和方法.如果更改基类中共享功能的实现方式,则不必更新每个派生类型中的代码; 他们继承了这些变化.

多态性

多态性允许使用统一接口处理不同数据类型的值.多态的主要用法是属于不同类型的对象响应同名的方法,字段或属性调用的能力,每个调用根据适当的类型特定行为.程序员(和程序)不必事先知道对象的确切类型,因此确切的行为是在运行时确定的

也可以看看:

http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming

http://en.wikipedia.org/wiki/Type_polymorphism


fro*_*die 4

这是一种以更直观、更真实的方式查看代码的方法。(您将数据以及对该数据的所有可能的操作打包在一起。)它还鼓励封装、抽象、数据隐藏......您真正寻找的是 OOP 的优点。