我开始学习前端JavaScript框架,比如Backbone.js或Ember.js,并想在Node.js中做一些项目。我已经阅读了一些文档,看起来这些框架用于创建单页应用程序。我习惯于开发分成多个页面的应用程序,我想知道在我这种情况下,这些框架是更有帮助还是更加累赘。
我还想知道,由于JavaScript在服务器和客户端都使用,我是否可以利用相同的语言在它们之间共享某些代码特性,以及是否有任何前端框架由于此原因更适合于Node.js。
我开始学习前端JavaScript框架,比如Backbone.js或Ember.js,并想在Node.js中做一些项目。我已经阅读了一些文档,看起来这些框架用于创建单页应用程序。我习惯于开发分成多个页面的应用程序,我想知道在我这种情况下,这些框架是更有帮助还是更加累赘。
我还想知道,由于JavaScript在服务器和客户端都使用,我是否可以利用相同的语言在它们之间共享某些代码特性,以及是否有任何前端框架由于此原因更适合于Node.js。
我们无法指出适用于NodeJS应用程序和前端的前端框架。
A. NodeJS本质上是服务端的JavaScript。这意味着可以在后端使用所有好用的功能性工具,比如 underscore.js, uglify.js等等,也可以使用你自己开发的逻辑(例如在基于Web的JavaScript中查找数组中的元素)。
B. 前端已经得到了进化,JavaScript应用程序也是如此。对于你的问题,当您想要开发单页应用程序时,您可能需要查看MVC,MVVM,MVW,MVP 设计模式。例如,BackboneJS帮助你构建MVC应用程序。虽然有像jQuery这样的库来处理富应用程序中的DOM、ajax和其他东西,但大多数时间,您会发现应用程序是由多个组合而成的。
C. 当您想为应用程序的前端选择框架时,TodoMVC是最好的决策 - http://todomvc.com/。
D. 当您想为后端(在你的情况下,NodeJS)选择框架时,您可能需要查看Express和Geddy。 如果NodeJS是纯浏览器JavaScript,那么Express和Geddy就像Backbone - 用于MVC。
此外,对于NodeJS应用程序,NPM注册表拥有大量实用工具的列表,其中大部分都是Browser JavaScript的端口。E. 服务器只是提供页面和资源。因此根据我的一点经验,即使您在后端和前端都使用JavaScript,您仍需要在两者之间进行个别的努力和文件/脚本。在这种情况下,您唯一受益的共同点是相同的前端JavaScript开发人员可以以更小的学习曲线在后端上工作。
我看到过专家放弃框架的想法,原因是学习曲线的负担。因此,最终需要进行一些研究,特别是针对使用多种技术的应用程序,并且需要投入学习和实施的努力。