我目前有一个AJAX(几乎所有)内联网webapp用于企业。它是高度模块化的(组件和模块ala Joomla),有大量的文件夹和文件。在最后一次计数中,大约有80-100个不同的观看页面(每个页面都是非常独特的),并且可能会在不久的将来增加。
我围绕命令和屏幕设计,客户端请求命令并发送所需数据并接收通过屏幕上的javascript显示的数据。
也就是说,通常有两种类型的文件,一个带有html,javascript的显示文件,以及一些用于模板的php。还有一个带有单个switch语句的php后端文件,其中包含诸如保存,更新和删除等操作以及其他功能。几个页面/屏幕可能使用相同的php后端。
最近,我一直在添加一个服务器端撤销功能,需要我重用一些代码。所以,我抓住机会尝试OOP,但我注意到一些函数是如此简单,创建一个类,检索所有数据然后更新数据库上的所有相关行似乎有点过分的简单操作,因为速度非常关键。另外我注意到整个文件中只有一个类。
那么,如果整个php是一个类怎么办?因此,在创建类和方法之间,以及使用全局变量和函数。哪个更快?
答案 0 :(得分:1)
这个问题是错误的。这个问题不是速度问题,而是代码组织问题。仅使用全局函数和变量,以及大量的函数和变量,它将越来越难以避免命名冲突并保持一切有条理。类帮助您打包和抽象。执行速度是次要问题,并且在大多数情况下不会明显增加(如果有的话)。发展速度虽然会随着时间的推移而显着增加,因为你不得不减少冲突。
答案 1 :(得分:1)
编写面向对象的PHP根本不会影响您的性能。如果您使用像Zend Optimizer这样的扩展程序,它甚至可以更快地运行。
因此,没有理由不在PHP中使用更清晰,更易于维护的面向对象范例。
编写纯粹的过程代码甚至可能导致性能下降,因为优化可能会更加困难,并且在这样一个混乱的环境中更容易出现耗费执行时间的小细节。