在大多数关于OOP的讨论中,它说优势是可重用性。你需要做一些额外的工作来定义你的类,这样你以后就可以节省时间来创建这些对象的许多实例和扩展。 / p>
这种情况的证据似乎是你不应该从程序转换到OOP编程,直到将所有内容写入对象的权衡与你保存的时间相等。
一般来说,何时是从程序转换到OOP编程的好时机?是否有任何迹象/特征通常需要了解您的项目需要进行转换?
答案 0 :(得分:4)
我假设这个问题来自于作为初学者的观点/范式。一旦程序员具有编写面向对象代码的经验,您当然可以使用此体系结构从一开始就编写项目。事实上,我认为自上而下的方法可以为大型项目节省大量时间。
对于你自下而上的情况,我会说你必须感受到它。参考this维基百科文章,了解有关不同方法的更多信息,一般来说。
特定于PHP,我想你可以使用这种方法进行迁移:
这个过程是学习面向对象的来龙去脉的好方法,最后你会看到好处。它还将告诉你我的初始观点:将一些东西转换为OO需要花费更长的时间,而不是从一开始就以良好的(高阶)设计开始。
答案 1 :(得分:3)
如果它不是一个非常简单的应用程序,现在是时候了。事实上,你可以总是编程OOly是有争议的,因为当你想在将来扩展你的程序时会更难。
答案 2 :(得分:1)
我认为这取决于具体情况。对于使用现有OOP框架的图形应用程序,权衡是即时的 - 您必须在某些情况下编写程序GUI代码。
但是,如果您正在进行原始数据处理而不与任何OOP框架进行互操作,那么您可能会发现OOP永远不会有意义。
答案 3 :(得分:1)
使用项目切换到OOP可能非常耗时。我怀疑它是否有利可图,因为它需要大量的编码,大量的测试,以及大量的重构。 OOP的整个概念与PP不同。
所以我建议不要在项目中切换,但要尽快开始为新项目使用OOP。当您感觉舒适时,您可以开始考虑现有项目的OOP设计,并逐步实现OOP中的功能。不过,这将是一项很多工作,而且可能会像重写整个项目一样。
答案 4 :(得分:0)
我会寻找其他需要切换的标志。对于所有的炒作 - 我是OOP的大力支持者 - 使用OOP语言,代码重用通常只会略微好一些。
OOP是另一种帮助组织代码的工具,就像过去的功能一样。这是一个伟大而有用的工具。但主要的好处是可以更轻松地编写和维护代码。
如果是我并且转向OOP需要几乎完全重写,我会推迟,直到交换机的一些更多实质性好处变得明显。如果您的代码有效,我不知道您为什么要重写它。
答案 5 :(得分:0)
这取决于任务,但完成了两项任务,这就是我想到的:
你觉得这项工作需要模块化吗?能否从中心位置管理类似或不相似的事物?有很多重复元素吗?快速发展或管理变革是否重要?
你认为你攻击的问题是可预测和重复的吗?是通过以下步骤解决或应用算法最好的服务?
如果更像是1,那么选择OOP,否则如果它更像是2,那就去做一个程序方法。
如有疑问,请使用您认为合适的内容。
答案 6 :(得分:0)
改变正在进行的项目的编程风格并不是一件好事。
如果您希望实体之间有更明确的责任,您可以随时将OO原则应用于程序代码。
检查ANSI-C
中OO编码的实例this very interesting book