JavaScript创始人Brendan Eich:我们不需要Native Client

jopen 12年前
   <div id="news_body">     <p> <a href="/misc/goto?guid=4958345974160187530">Native Client</a> 是 Google 支持的开源技术,用来在浏览器中像桌面程序一样运行编译过的代码,满足人们对 web 应用程序的可移植性和安全性的期望,提供更好的富客户端用户体验,允许开发者编写更强大的移动 Web 应用程序。</p>     <p> JavaScript 创始人 <a href="/misc/goto?guid=4958345974961473593">Brendan Eich</a> 上个月在旧金山召开的O'Reilly Fluent ConfereNative Cliente 大会上解释说 JavaScript 足以满足 Google 对 Native Client 的设计目的,并<a href="/misc/goto?guid=4958345975753436075">怀疑 Native Client 是否能够像 JavaScript 一样,得到浏览器厂商的广泛支持</a>。</p>     <p> Eich 认为 JavaScript 自 17 年前诞生起就能够在浏览器中安全运行可移植的本地代码,而且得到各大浏览器厂商如 Apple、Microsoft、Mozilla 的支持。而出品了 Chrome 浏览器的 Google 想要使 Native Client 获得同样的支持会比较困难,因其自己也是浏览器市场竞争者。</p>     <p> 现任 Mozilla 的首席技术官 Eich 谈到 JavaScript 的可达性和内存安全等优点。或许是回应 Native Client 的“双沙箱”技术, Eich 指出“JavaScript 也能以沙箱运行,我们不需要 Native Client”。另外,Native Client 支持C/C++程序员将代码编译为 Native Client 模块,从而获得类似 JavaScript 的可移植性。对此 Eich 引用 Low Level JavaScript 项目作为回应。该项目可以将代码编译为 JavaScript,并提供类C语言类型系统的手动内存管理和内存安全特性。</p>     <p> <a href="/misc/goto?guid=4958345976548144763">Eich 谈到下一个 JavaScript 官方升级版本</a>- ECMAScript 6 已经在 Chrome 和 Spider Monkey 引擎上揭开部分面纱,并将更好的支持应用程序、库和代码生成,他强调并不打算将 JavaScript 变成类似 Java 的东西。ECMAScript 6 将包含字符串插值、代替 undefined 值的缺省值、对象索引等变化,并淘汰参数对象。Eich 认为 JavaScript 将不断变化成为更好的编译目标语言,“有趣的是,人们以我所不能预见的方式在使用它”。</p>     <p> 有人认为即使 JavaScript V8 引擎也要比 Native Client 慢上许多倍,JavaScript 并不能胜任高性能移动应用,对此 Eich 认为与版本和 CPU 架构有关。另外有人质疑 JavaScript 的创始人并不喜欢来自 Native Cient 的竞争,对此,<a href="/misc/goto?guid=4958345977344708078">Eich 亲自现身称无论 Native Client 还是 Dart 语言,都很难赢得 Chrome 之外的浏览器支持</a>。</p>     <div id="come_from">     来自:      <a id="link_source2" href="/misc/goto?guid=4958345978145165809" target="_blank">InfoQ</a>     </div>    </div>