我对社区规模或部署难度不太感兴趣。我想象随着 Ruby 受欢迎程度的提高,这些问题会减少。相反,对于在线完成任务的世界来说,Ruby 相较于 PHP 自然而然在哪些工作中可以作为更合适的解决方案呢?同时,请明确假设 PHP5 以面向对象的方式编写 :-)
谢谢。
我的观点是忘记问题类别,使用最自然的语言。我听到很多人说Ruby的语法很烦人,或者他们只是不“懂”Ruby的风格。我从不试图说服这些人Ruby是最适合他们工作的候选语言,就像我从不试图说服法国小说家用英语或中文写作以扩大受众一样。
使用Ruby可以获得一个通用的语言,可应用于Web应用程序之外,但如果这对您没有意义,请按照直觉选择最容易的语言。话虽如此,要做好它。深入研究您选择的语言,学习其他人的代码,并变得熟练。也许偶尔重新审视其他语言,看看您是否仍然有同样的感觉。
一些例子:
PHP在廉价的托管提供商中更为常见,总体而言,托管PHP应用程序所需的工作比使用Ruby编写的应用程序要少。因此,如果想编写一个广泛分发的平台,例如WordPress,则PHP是更好的选择。
Ruby比PHP更适合用于脚本编写。如果您不担心网络上的某些问题,只需要一个后端工具,那么Ruby是更好的选择。
很难给出一个答案。随着你学习越来越多的编程语言,许多人得出结论:“合适的工具做合适的工作”。特别是当你学习像Perl这样的小众语言时。它是处理文本和管理工作的好工具。但不适用于商业企业应用程序。这就是Java的用武之地。Python适用于脚本编写,Ruby适用于Web应用程序。
在元层面上,Ruby更加安全。历史表明,安全和PHP并不搭配得很好。作为一名安全顾问,我的选择会是Ruby。
我发现这张关于Ruby和Ruby on Rails的幻灯片非常有趣,建议你去看看。
http://www.slideshare.net/dosire/when-to-use-ruby-on-rails-1308900
它甚至说Ruby比PHP慢2倍
但是,老实说,你喜欢PHP和Ruby都是非常好的资产。
使用你最熟悉的语言来完成工作,只有你能力达到一定水平,你的代码才能更加优秀。