下一代 JavaScript 开发方向?

更新: Mozilla Labs 新出一篇 Next Generation Javascripting 也总结了近来出现的一些有趣的东西,包括 Tamarin, SqurirrelFish, Processing.js, ContextFree.jsParchment

其中 Tamarin 和 SqurirrelFish 代表了浏览器 JavaScript 引擎性能的提高 — Tamarin 虽然现在还不明显,因为它的 JIT 还在 tracing 优化阶段,SqurirrelFish 甚至还完全没用 JIT。不过这两者正式进入市场至少要到 2009 年 Mozilla 3 平台的初步发布和 Safari 4 随 Snow Leopard 一起发布时。

Processing.js 和 ContextFree.js 则代表了 Web-based Processing 创作的新方向,ProcessingNodeBox 的成功充分说明了在简单技术上提供更有效的表达方式会给图形生成带来多大的改进,现在能在 Web 上直接实时呈现这些优美的图形,毫无疑问 Flash, Silverlight 等将更不受欢迎了。

Parchment 则是一个非常漂亮的 Z-Machine 在 Web 上的呈现,适合 Text Adventure 爱好者们。


近来,两个新出现的 JavaScript 框架得到了许多关注: SproutCoreObjective-J。表面上,它们共同的特点就是大量使用了 HTML5 特性来改善用户体验,达到类似桌面应用的效果,然而从底层分析,它们其实代表了两种对富 JavaScript Web 应用的开发方式的革命。

为什么说是“两种”呢?虽然 SproutCore 是一套几乎完全由 Apple 工程师开发的框架 — 其设计目的就是给 MobileMe 提供类似桌面应用的效果 — 但其设计思维是 Web 化的,是和现下流行的服务器端开发框架一脉相承的。从我的观点看来,SproutCore 是受 Ruby on Rails 影响严重的一套框架,其提供的工具大多用 ruby 编写,创建的目录结构都带着 Rails 的痕迹 — 甚至开发人员也是典型的 TextMate 用户。

而 Objective-J 虽然也主要是由前 Apple 工程师领导开发,可是这些工程师却是不折不扣的 Objective-C/Cocoa 狂热爱好者,他们在 280slides 表现出来的是典型的 Keynote 风格,其代码组织则是典型的 NeXTSTEP 风格。

所以,可以想见的是,SproutCore 的设计思维更容易为大众接受,而 Objective-J 很可能始终保持小众 — 甚至我都很怀疑它到底会不会发布…

3 Comments

  1. realazy:

    我觉得 Objective-J 的目标是让 Cocoa 开发者不需懂 JS (当然,基本的语法还是必须)就可以使用 Cocoa 的方式开发 web app 吧,所以能称得上革命。SproutCore 只不过 yet another js framework 而已,只不过提供的 UI 元素比其它 framework 要丰富得多,对于一看到 UI 就头痛的程序员来说确实非常友好(尤其 HTML 和 CSS 的编写加上浏览器兼容性令即使是专业人士也抓狂)。尽管刻意模仿 Cocoa 的各种思想和方式,但程序员基本上不需要懂 Cocoa, 而 Objective-J 的开发是以懂 Objective-C 为前提的。

    我始终认为,用一种语言模仿另一种语言,尽管某些 hacker 很 high, 但始终是个馊主意。我个人更看好 SproutCore.

  2. Frank Cheung:

    JS可能是世界上最容易被人刻意改造的语言。
    ——没用的,还是老老实实地学习HTML/CSS/ECMASCRIPT,这些都是标准的东东,雷打不动。

  3. 爱苹果,爱生活 » 基于 Objective-J 的超酷简报制作站:

    [...] 作为全新的 JavaScript 框架,Objective-J 的东家最近展示了基于其上的 Web 应用──280 Slides,超酷的简报制作站点。俗话说得好:“外行看热闹,内行看门道。”你可以点击这里读读 jjgod 对 Objective-J 和 SproutCore 两者的看法,也可以点击这里看看 Objective-J 是如何像 Objective-C 那样来编写脚本;而我就直接上图,让大家见识见识 Cocoa 的 Web 化。 [...]

Leave a comment