node.js - SailsJS 与 BreezeJS 的 SPA 后端验证

标签 node.js angularjs architecture breeze sails.js

我是全栈 javascript 应用程序开发的新手,已经阅读了很多关于各种内容的帖子和文档,但我对以下问题有点困惑:

有两个框架似乎提供了非常相似的功能,但在互联网上从未相互对比(据我所知)

SailsJS - 基于 Express 构建的服务器端 MVC 框架 BreezeJS (+AngularJS) - 客户端 MVC

显然我可以将 Sails 与 Angular 结合起来,在 NPM 中有一些尝试,但没有人另外使用 Breeze,这是由于冗余还是只是一个愚蠢的想法?

我正在考虑开发一个具有计算密集型后端进程的 SPA(例如,大型数据集上的机器学习〜数百万个 mongo 文档),如

Mongo  - Node : { Express - Sails } - Breeze - Angular

我正在寻找关于这种堆栈(尤其是 Breeze/Sails 部分)是否是个坏主意的反馈。另外,我非常感谢有关 javascript 全栈架构设计决策的任何建议/建议链接。

谢谢!

最佳答案

基本上,您提到的所有软件都可以在一个产品中使用。了解每个组件的用途/强度很重要:

<强>1。 MongoDB

这个很清楚:数据库引擎。

<强>2。 Node.js

这也是一个:将为您的 API 提供支持的服务器端 Javascript。

<强>3。 Express.js

现在越来越有趣了。 Express 是 Node.js 的服务器端 Web 应用程序框架,但非常简约,这意味着它提供了一些基本功能,没有隐藏的魔法和其他花哨的东西。

<强>4。 Sails.js

相反,Sails 提供了很多神奇的功能,从开箱即用的 API 开始,到套接字结束。尽管它建立在 Express 之上,但 Sails 是一个服务器端 Javascript 框架,它遵循完全不同的方法,方便而不是简单。如果我们谈论 SPA,那么 Sails 必须提供的最有用的东西无疑是开箱即用的 API:您将能够在不到 5 分钟的时间内启动并运行它。

<强>5。 Angular.js

这里我们进入客户端。 Angular 可帮助您更好地组织客户端 Javascript,并在浏览器中轻松执行一些非常复杂的任务。当然,如果我们谈论富客户端应用程序,现在 Angular(或类似的框架,如 Backbone、Ember、Knockout 等)是必不可少的。

6. Breeze .js

最后,Breeze 为您提供了一种从胖客户端 Web 应用程序组织/访问数据的方法。无论您使用的是 Angular、Backbone 还是 Knockout,Breeze 都将帮助您以类似于 ORM/ActiveRecord 概念的方式管理数据。

因此,毫无疑问,所有这些组件都可以轻松地协同工作(有时人们谈论 MEAN、MEANS、BMEAN 堆栈,其中每个字母都是框架/组件名称中的第一个字母)。但最终,应由您决定在您的产品中使用多少。作为一个方法示例,您可以从 Mongo/Node base 开始,然后通过询问自己每一个框架来选择必要的框架,它是否简化了您的生活(尤其是从长远来看)或使它复杂化。

关于node.js - SailsJS 与 BreezeJS 的 SPA 后端验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21159512/

相关文章:

node.js - 在 heroku 上用 node.js 开发一个时钟和 worker

php - 当成员也是分层结构时,如何构建类结构?

.net - 接口(interface)应该在哪里 "physically live"?

node.js - 错误!错误 : EPERM,

node.js - Node (Express) - 通过 api 使用 express 发送 pdf

javascript - 如何在 Angular 页面中设置 CSRF token - OWASP CSRFGuard 3.0

javascript - 如果选中复选框 > 1,则应用表达式

javascript - ng-if 中的 html 元素在页面加载时出现

javascript - 链接 promise 执行两个操作

javascript - knex.js 数据库调用未完成