怎么了所有的JS框架?

我是.NET(完成我在ASP.NET WebForms中的大部分工作)开发人员。 但是,我并不是仅限于自己的这个框架,不时地阅读和尝试学习新的东西。

最近我注意到Javascript世界里发生了很多事情。 我熟悉jQuery / UI并从客户端调用Web服务。 但最近我看到很多用Javascript编写的新框架。 我真的不知道为什么这么多是最近创造的。 任何人都可以启发我为什么会这样呢? 不同的框架有什么不同? 我应该何时使用/不使用它们? 例如node.js对我来说是非常奇怪的。 在JS中编写服务器端代码? 在JS中编写HTTP服务器(或者没有人真的这么做?)。 在JS上创build客户端UI? 我真的不明白。 添加到这至less5个模板框架,我的头即将爆炸:)

阿特伍德定律 :

任何可以用JavaScript编写的应用程序最终都将用JavaScript编写。

真正的故事是:nodejs(或v8)允许开发人员用Javascript编写可以在浏览器之外执行的应用程序 。 这使得Javascript和Python或Ruby一样强大。 Nodejs比历史上的任何语言都要快,因为很多开发者已经知道Javascript了。 突然间可以用Javascript编写应用程序,所以我们正处于发展的黄金时期。 Ruby社区(早期采用者)的许多人尝试过nodejs,所以它inheritance了许可证下共享库的文化。


我不使用客户端/服务器端语言,因为它是令人困惑和错误的二分法。

我认为所有的JavaScript服务器端库现在都出来了,因为谷歌的V8; Google为Chrome制作的高效JS引擎。 它编译的JS代码,因此运行相当快。

不久之前,V8发布了。

它可以很容易地运行js而无需浏览器高效。

node.js的最大缺点是可能是一个致命的错误会导致整个http守护进程崩溃。 所以一个访客可以把整个网站,除非很多的照顾下。

我认为像node.js这样的js-server-side的最大优点是你可以在服务器和浏览器上运行相同的代码。 例如,这对表单validation特别有用。

与PHP相比,node.js还提供了能够进行非阻塞调用的优势。 事实上,使用node.js真的很难做任何阻塞调用。

我不会把node.js作为一个框架调用,但是我觉得它更像是一个基本的库,为此还需要构build一个框架(或者已经有一个框架了?)。

Linkedin是build立在node.js上的,他们似乎对此非常满意。 但是,他们的网站似乎对我来说很落后。

所有关于JS的大惊小怪都是因为用户可以获得很棒的UI体验。 用户不用等待页面刷新每一次,他们做的事情,结果几乎是瞬间的。 我同意@Karoly Horvath的评论。 JQuery起初可能看起来很奇怪,但是由于未知,一旦习惯了语法,使用它就很好。 回到用户体验,如果您的页面需要永久加载/重新加载,用户宁愿使用另一个站点。 你的问题不适合堆栈溢出,但是我确定你会在SO上的聊天站点find一些额外的答案和意见。 祝你好运。