面向对象
面向对象是把一些常用的操作进行类封装起来,方便调用,需要用的地方,调用一下即可,这样开发方便,维护也方便!修改这个封装的类,即可达到修改全站的目的!
面向对象三大特性(封装,继承,多态)使得在做复杂的事情的时候效率和正确率得到保证。
面向过程
面向过程就是把代码封装成子过程或函数,在每一个地方都使用单独的代码进行操作,如果开发代码重复多就比较累赘,维护的时候相对麻烦些,你修改了哪里,就只在哪里起作用。
面向过程和面向对象区别
(1)面向过程效率比面向对象高,面向过程可以直接调用函数;面向对象必须先得到主体(对象),再调用内部函数;
(2)编程复杂度:面向对象要高,面向过程简称
(3)面向对象后期比面向过程好维护
PHP面向过程
面向过程优点在于运行起来快。当下比较流行的两个面向过程的PHP程序:OsCommerce和PhpMyAdmin。主要使用面向过程的编码方式。它们构建起来很快,运行起来也很快。两者都很自然地采用嵌入HTML的方法。
以上两个使用面向过程风格的程序都有非常好的文档和代码注释。OsCommerce提供的开发框架可以增加维护性和扩展性。但是两者都没有提供API,不能扩展程序到另外的体系中。
如果你想把OsCommerce整合到一个帐单程序中,需要花费大量的时间和精力,就像扩展PhpMyAdmin成一个供客户使用的后端管理工具。不过从它们设计的目的来看,确实在各自的领域中都表现地很出色。
PHP面向对象
面向对象优点在于扩展性和封装。仅仅用面向对象的方式来写代码不会为你的代码产生文档,但它可以鼓励你为之添加文档。并且,为了易于扩展,你可能会写一个API。
当下比较流行的两个面向对象编写的php程序:Smarty和FPDF。主要使用面向对象的编码方式。Smarty和FPDF都提供了带有良好文档的API来扩展主类。这说明了在类的内部组织方法和数据的必要性–有时同样的功能可以用函数和全局变量来完成,但这样不易于扩展。并且,使用对象对跟踪和保持PDF或HTML文档的风格非常有帮助,你可以将同样的数据用不同的格式来发布。Smarty和FPDF都是使用对象来建立灵活实用的类库的极好的例子。