我是.NET(我在ASP.NET WebForms中的大部分工作)开发人员。但我并不仅仅局限于这个框架,而是阅读并尝试不时地学习新的东西。
最近我注意到Javascript世界中发生了很多事情。我熟悉jquery / UI并从客户端调用Web服务。但最近我看到很多用Javascript编写的新框架。我真的不知道为什么这么多人最近被创造出来。任何人都可以告诉我为什么会发生这种情况?不同框架之间有什么区别。我什么时候应该使用/不使用它们?例如,node.js对我来说非常奇怪。在JS中编写服务器端代码?在JS中编写HTTP服务器(或者可能没有人真的这样做?)。仅在JS上创建客户端UI?我真的不明白。加上至少5个模板框架,我的脑袋即将爆炸:)
答案 0 :(得分:3)
任何可以用JavaScript编写的应用程序最终都将用JavaScript编写。
真实的故事是:nodejs(或v8)允许开发人员在Javascript中编写可以在浏览器外执行的应用程序。这使得Javascript像Python或Ruby一样强大。 Nodejs的采用速度比历史上的任何语言都快,因为许多开发人员已经了解Javascript。突然间,可以用Javascript编写应用程序,因此我们处于淘金热的发展阶段。许多来自Ruby社区(谁是早期采用者)尝试过nodejs,因此它继承了在许可许可下共享库的文化。
我不使用客户端/服务器端语言,因为它令人困惑并且是错误的二分法。
答案 1 :(得分:1)
我认为所有的javascript服务器端库现在都出现了,因为谷歌的V8; Google为Chrome制作的高效JS引擎。它编译JS代码,因此运行速度非常快。
不久前V8发布了。
这样可以在没有浏览器的情况下轻松运行js。
node.js的最大缺点可能是致命错误会导致整个http守护程序崩溃。因此,除非经过多次关注,否则一位访客可以将整个网站关闭。
我认为像node.js这样的js-server-side的最大优点是你可以在服务器和浏览器上运行相同的代码。例如,这对表单验证特别有用。
与PHP相比,node.js还具有能够进行非阻塞调用的优势。事实上,对于node.js来说,很难进行任何阻塞调用。
我不会将node.js称为框架,我认为它更像是一个必须构建框架的基本库(或者已经存在一个框架?)。
Linkedin建立在node.js上,他们似乎非常满意。然而,他们的网站对我来说似乎很落后。
答案 2 :(得分:0)
关于JS的所有大惊小怪都是因为用户可以获得出色的UI体验。而不是用户等待页面每次刷新他们做某事时,结果几乎是瞬间完成的。我同意@Karoly Horvath的评论。 JQuery起初可能看起来很怪异,但是由于它的未知,一旦习惯了语法,它就很棒了。回到用户体验,如果您的页面需要永远加载/重新加载,用户将宁愿使用其他站点。你的问题不适合Stack Overflow,但我相信你会在SO上的聊天网站上找到一些额外的答案和意见。祝你好运。