虽然您的编码方式完全取决于您的决定和独特的风格,但我想说在决定程序化、面向对象或混合时需要考虑一些因素。
程序规格 -
首先,如果您在一个团队中,为其他人编写程序,或者遵循您自己的规范,请考虑是否已经做出了选择。
可用性 -
面对现实吧。有时最好的库在面向对象或过程中都可用,而不是两者兼而有之。在这种情况下,从一种风格改变需要使用完全不同的库,或者自己构建一个类或函数库。可用的库可以节省您的时间,唯一的抵消成本是主要面向对象程序中的过程函数,反之亦然。
熟悉度——
与可用性类似,您可能更熟悉某个类或一组功能。虽然您可能有时间停下来学习一个新的课程模块以增加您的知识,但您可以通过使用您已经学习并经过全面测试的程序库来节省时间。因此,如果您正在处理时间线,您可能希望使用更熟悉的库。但是,如果您正在研究和学习,那么您可能需要花时间阅读文档、安装和测试新的解决方案。
数据处理和速度 -
另一个需要考虑的因素是您如何处理数据。如果数据在类中,那么该类可能具有对数据进行操作的方法。在这种情况下,过程式编程需要从类或对象中获取数据,对数据进行操作,然后更新对象。在我看来,更好的设计是将函数包含在对象中。
但是,如果您的所有数据处理都在类之外,那么使用函数可能会更快。如果您想使用类方法,则必须加载该类,并可能创建一个对象。即使是静态方法也可能比函数慢。因此,如果速度是一个考虑因素,例如在循环中,那么请考虑您的程序和 PHP 必须经过多少步才能到达函数、类或对象。
展望未来 -
如果您想在过程编程或面向对象编程之间进行选择,那么请尝试预测将来最有用的内容。我发现面向对象编程对于创建可重用代码非常有用。我发现过程式编程对于命令行代码以及组织和使用对象非常有用。随着计算机科学的发展,这些可能会保持不变,因此我之前所做的工作更有可能再次有用。
相反,一些库和编程语言可能会鼓励一种风格。PHP 支持这两种风格。但如果我的总体印象是准确的,那么 PHP 一直在朝着面向对象的风格方向发展。如果在 PHP 函数和对象之间进行选择,请查看创建函数的 PHP 版本。还要检查是否有任何程序功能已折旧或将过时。如果是这样,请使用面向对象的方法,因为当不再支持这些过程功能时,这将使您的程序更有用。
希望这能提供一些考虑。谢谢。