gpt4 book ai didi

php - 采用 Ruby on Rails 提高产品质量?

转载 作者:可可西里 更新时间:2023-11-01 00:26:55 25 4
gpt4 key购买 nike

我们是一家使用 php 作为开发语言的网络开发公司,但我们正在努力提高代码质量,尽量减少错误。我们发现 PHP 使得生成草率代码有些“容易”,因此我们正在考虑将 RoR 作为替代方案。 RoR 是否有助于提高代码质量?我们想开始使用 TDD,RoR 是否有助于采用这种方法?总而言之,是否值得开始用这项新技术培训我们的开发人员,还是我们应该继续开发 PHP 并投资提​​高他们的 PHP 技能?我们认为“全新”的开始和 RoR 作为一种令人愉快的语言的声誉可能有助于朝这个方向发展。

更新:正如@konfoce 所建议的,也许我应该问一下 RoR 提供的哪些功能集可能使其成为比 PHP 框架更好的选择,就帮助开发人员生成高质量的代码而言?我正在考虑语法、TDD 集成、帮助确保 DRY 等

最佳答案

在 PHP 上比较 Rails 和 PHP 并不公平。毕竟,Rails 是一个平台,而 PHP 是一种语言。

如果将 PHP 与 Ruby 作为一种语言进行比较,那么,我个人认为 Ruby 更好。 PHP(对我而言)感觉像是从服务器指令列表中有机地发展而来的东西。 Ruby 似乎更有凝聚力,正如他的创造者所说,它被认为是程序员所喜欢的。

同样,我无法将 Ruby on Rails 与其他 PHP 框架进行比较,因为我没有使用过任何框架(我只对 Drupal 和 Wordpress 有经验)。

对我来说,Ruby on Rails 与众不同的地方(尽管我听说其他人现在正在使用这些想法)是:

  • “约定优于配置”的理念。在 Rails 上,大多数通常“由程序员决定”的事情,比如命名约定,或者将初始化代码放在哪里,几乎都是一成不变的。仅此一项就有助于提高代码质量 - 来自世界各地不同团队的不同库遵循同一组约定。
  • 美的理念。如果 Rails 程序员看到超过 10 行的方法,他们会很生气。他们喜欢他们的程序看起来像简单的英语。以这种方式生成的代码是我见过的最好的代码。它简短、简洁、完整。
  • 测试纪律。说真的,Rails 的人把测试放在心上。如果你在 Rails 上找到一个库或插件,很可能它会带有嵌入的测试。如果没有测试,任何中型项目都不会接受您的补丁。 Ruby 本身(语言)是一种具有 specs 的语言.
  • 追求卓越。 Rails 社区总是渴望改进。他们不怕做出向后不兼容的更改,如果这会使代码更好(例如,请参阅 ActiveRecord 接口(interface)中的巨大变化,从 rails 2.x 到 3.x)。

您会注意到我没有过多地谈论技术特性。那是因为对我来说,让 Rails 变得伟大的不是“技术”,而是“行为”。选择的语言或平台本身反射(reflect)了一种心态。对我来说,这种心态是 Rails 最好的特性。

在我看来,任何接受这种思维方式的程序员都会写出更好的代码。如果他用 PHP 编程,他只会产生更好的 PHP。唯一的先决条件是他至少喜欢一点点编程,并且他有一颗好奇的心。这不是为那些只是为了把食物放在 table 上工作的代码猴子准备的。

他会从其他 PHP 框架中得到同样的东西吗?我不知道。也许吧。

如果您担心重新开始的成本,那么继续做您已经知道的事情 (PHP) 来赚钱,但是在 Rails 上开始一个小项目(也许是内部项目)。您的 PHP 代码会逐渐变得更好。

... 直到您的开发人员告诉您他们厌倦了 PHP,他们只想使用 Ruby :)

关于php - 采用 Ruby on Rails 提高产品质量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4404117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com