对于ABSOLUTE初学者,Node.js/Express.j或Ruby on Rails

Cpt*_*ous 12 javascript ruby-on-rails node.js express

我曾问一个先前的问题有关的Web应用程序的开发on Rails的使用JavaScript或红宝石和得到了一些非常好的建议maerics基本上归结为Javascript的前端/小应用,RoR的服务端/大型应用程式( Groupon范围).

然而,经过一番挖掘,我发现了Node.jsExpress.js所以我的决定基本上回到了第一个方面.

我正在寻找一种可以用来将想法带到功能阶段的语言(同样,范围就像Groupon或Twitter).我是一个绝对的初学者.我知道HTML/CSS和一点jquery,但这是关于我对Web技术的了解程度.

我听说过RoR很容易学习,或者至少可以学习,并且有很多社区/支持.但是Javascript无处不在,并且不仅仅适用于大规模的Web应用程序(如果我使用RoR,我还会使用它),尽管它要复杂得多.看到我没有任何经验,我想我现在应该选择一个,并坚持下一个〜6个月,看看我怎么样.

但是,有人可以推荐哪一个去?

abj*_*ror 17

当您在上一个问题中询问Javascript和RoR时,您有效地询问了Node.js和RoR.

如果您正在构建商业/企业级应用程序,请坚持使用RoR.有更多的资源,更大的社区,相对稳定的版本,你可以很容易地找到具有RoR经验的优秀开发人员.

Express.js就像是Sinatra for Ruby.它们都不像Rails那样先进​​,更喜欢更"基本"并提供最小的功能集,而不是试图成为Rails的"一次性"框架.

现在,Node.js正在迅速改变它的API,仍然没有达到版本1并且很难找到开发人员(你经常让人们声称他们知道节点并且有1年的exp,当他们实际上意味着他们有1年exp与客户端javascript).此外,对于99%的网络用途,RoR就足够了.大多数人只将Node用于他们的宠物项目,用于测试下一代超级动态接口或与Socket.io集成的websocket.如果您只是想为商业目的构建应用程序,请使用RoR.

至于困难,当你开始时,Rails会有点神奇,它会做很多事情,你会有一些困难做一些没有教程的东西.但是看看一些流行宝石的源代码甚至是自己的轨道代码,你就可以立刻加速.Ruby是一种非常简单和漂亮的语言,你会发现它比javascript更简单,也许更有趣.

  • 使用Rails,您可以以正常的命令式样式构建应用程序(这是您的大脑处理逻辑的方式; Node是异步/功能样式,对于没有经验的人来说不直观).另外,如果您需要更多的交互性,可以集成Backbone.js和Underscore.js,并使用它们来提升您对Node的了解.当然,Node是Web的未来,但未来还有很长的路要走,而且确实不应该是开发结构化Web应用程序的第一步. (6认同)
  • 谢谢(你的)信息!没有在StackOverflow上使用很长时间,但是让人觉得很有帮助.我听说Node/Express成熟度是一个问题,严重缺乏文档可能会给像我这样的初学者带来问题.我认为让我看到它的理想解决方案就是我会学习Javascript(显然),我只需要前面的_和_后端的一种语言.使用RoR,我需要分别学习Javascript/jQuery与RoR的服务器端脚本交互吗? (2认同)
  • 可以这样想:最重要的是,知道如何构建/架构/设计应用程序,而不是编写代码.Rails为您展示了一个出色的设计.现在Node具有必须只掌握一种语言的好处,但您将不得不与语言进行一些斗争.在javascript中编写大量逻辑意味着处理"回调地狱",同时学习语言的本质和围绕它构建应用程序是很困难的. (2认同)