gpt4 book ai didi

node.js - Nodejs/rails/主干架构

转载 作者:太空宇宙 更新时间:2023-11-03 22:44:47 25 4
gpt4 key购买 nike

我正在构建一个应用程序,它的工作方式与 craigslist 非常相似,但功能有限。我通常会使用 Rails 来开发此类应用程序,但我对学习 nodejs/backbonejs 框架很感兴趣,看来这是一个学习它的好机会。

我不确定nodejs和/或backbonejs如何适合这个解决方案?我不一定非要使用rails,如果有意义的话,我可以使用nodejs 和backbonejs。

谢谢

最佳答案

您当然可以将 Node.js 或 Rails 或两者与 Backbone.js 一起使用 - 我已经将堆栈与所有这些技术或这些技术的组合一起使用,它们非常棒。选择使用哪些技术应该取决于您正在构建的内容,以及在较小程度上取决于您对每种技术的舒适程度。

用 Node 替换 Rails
Node.js 可以轻松取代 Rails 的功能,即与数据库通信、包含模型逻辑、提供页面和 Assets 以及控制路由。有大量的tons of modules可用于此。一个常见的解决方案是使用 Express(一个简单的 Sinatra 类型的 Web 框架)来提供页面服务并处理模板,并使用 ODM/ORM 来处理数据库对象。还有更广泛的类似 Rails 的框架,例如 Geddy。

我对 Node 作为 Rails 直接替代品的看法
如果您只需要 Rails 的功能,请使用 Rails。在我看来,Ruby/Rails 代码看起来更干净、更易于管理,而且更成熟一点(随意喷吐...)。如果您要提供许多不同的页面,Rails 可以很好地组织内容。但是,如果您正在制作单页应用程序(这是 Backbone 的主要用例之一),那么 Rails 包的大部分内容都是不必要的 - 您只需要模型逻辑和数据库交互。在这种情况下,带有 ORM 和 RESTful 路由的 Express(Node) 或 Sinatra(Ruby) 之类的东西就足够了,用于后端和前端之间的通信。

添加了 Node 功能
Node 更引人注目的用例是用于具有实时或多人游戏方面的站点; Node 非常适合并发和异步。如果您的客户端在无需重新加载页面的情况下相互发送数据,或者在无需再次加载页面的情况下将数据从服务器推送到客户端,请使用 Node(执行此操作的一个很好的模块是 Socket.io )。同样,这是一个非常适合 Backbone 满足的单页面或高交互界面的用例。

关于node.js - Nodejs/rails/主干架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8306290/

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