前端之王能否续写辉煌 JavaScript服务器端开发现状
创始人
2024-07-16 07:20:49
0

随着Node.js的出现,使JavaScript出现了一系列的变化,AppengineJS的发布则让人们更加的期待JavaScript在服务器端的表现。不管怎样,这一多才多艺、功能强大的Web开发语言已经证明了自己。(相关阅读:JavaScript已成Web之王?)

为什么不做JavaScript服务端开发

没有合适的JavaScript Runtime(JSR ?)

现在JavaScript之所以能够流行,很大程度上取决于浏览器的普及.浏览网页的时候需要计算一道简单的四则混合运算,你会怎么做?心算?打开计算器然后点几个按钮?我的方法是在浏览器地址栏输入"javascrit:alert(1+2+4*5);".很方便不是么。

但是服务端的情况就不容乐观,除了少数几个解析器能够勉强运行单薄的JS语法,似乎很难让他在服务端大展拳脚.V8?嗯,确实很快,不过还只是个跑在客户端的小伙子.Node.js?嗯,的确提出了很多特性,不过就拿这些特性想征服服务端的开发还是不容乐观.RingoJS?JVM的庞大,让JavaScript无法灵巧的伸展.IronJS?无案例,无图,无真相。

Node.js

没有成熟的类库

你愿意在一片荒芜的土地上开荒,还是在肥沃的农田挥锄?

JavaScript在客户端确实意气风发,jQuery、Prototype、YUI、Ext js、Dojo等等。无数的框架,为我们的网页动态化提出了解决方案之道.在这百家争鸣的日子里,众多特性,理念,被提出来,链式操作,函数式编程等等。

反观JavaScript在服务端的表现,集合操作停留在增删改,没有filter,没有order.字符串只能拼接,没有格式化.文件读写就一个CommonJS标准.数据交互的确得益于JSON的流行,很方便,但是数据存储似乎又回到了ASP/VBScript时代。

标准

就像客户端浏览器对JavaScript的支持参差不齐,服务端对于CommonJS标准也是有待加强.所幸服务端JavaScript没有跨"浏览器"之忧。

效率

开发效率顶呱呱的JavaScript在服务端由于缺少类库的支持,使得服务端开发相比现存的几个平台(JVM,.NetFX),慢了不止几个档次.客户端就备受诟病的执行效率放到服务端仍旧是一个不可忽视的问题。

为什么要看好JavaScript服务端开发

灵巧

没人否认JavaScript本身强大的灵活性,强大的自解析,原型链和弱类型衍生出的种样繁多的开发方式.实在是让人爱不释手。

普及

JSON确实有XML不可比拟的潜质,体积瘦小,方便传输.众多语言中都有支持.客户端无需插件就能原生解析.还有什么比这更棒的么?

活跃的社区

一个篱笆三个桩,一个好汉三个帮。活跃的社区不会甘心JavaScript止步与客户端,必然会向服务端虎视眈眈。

原文地址:http://www.macgoo.com/myblog/archives/166/

【编辑推荐】

  1. JavaScript挺入服务器端开发语言序列
  2. JavaScript已成Web之王?Java情绪稳定
  3. JavaScript最让人费解的十件事
  4. 如何正确实现PHP与Javascript交互
  5. 讨论:是什么让我们爱上Javascript?

 

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...