异类语言的诞生
说到这里,不能不提一个异类语言了,叫做Dart。这个Dart可是出自名门,是由V8的首席程序员Lars Bak在他工作之余发明的,他一边改善V8的性能,一边琢磨如何能突破JavaScript语言本身诸如弱类型等限制,让web程序执行速度更上一层楼。他最后决定,干脆摆脱JavaScript的束缚,重起炉灶设计一门全新的、为新时代Web App专门打造的语言-- Dart。
在了解Dart前,简单科普一下同父同母的兄弟V8。Google的Chrome浏览器当年发布时以其远超Internet Explorer和Firefox的网页渲染速度震撼了世界。其中一个核心优势就在于全新的V8 JavaScript引擎。当竞争对手还在吭哧吭哧解释执行(interpret)网页中的脚本时,强大的V8引擎采用即时编译(JIT)技术把JavaScript的运行速度提升到了一个全新的层次。在之后的几年里,各家浏览器厂商纷纷效仿,推进了整个Web平台的发展。目前深受追捧的Node.js / io.js其实也都是V8开源后的衍生产品,造就了一个前后端用同一种编程语言的新兴开发生态。
Dart语言借鉴了广大程序员熟悉的Java语法,支持面向对象、单继承、interface、泛型、非强制的类型标记等语言特性。Dart的虚拟机在V8大牛的打造下性能当然也是超强的。Dart程序还能被编译成JavaScript,运行在没有Dart VM的环境中。
然而,Dart从发布日起一直倍受争议和质疑。它被认为是一项分裂web之举,而且长期以来没有得到任何其他浏览器厂商的支持。2015年初,Google宣布取消将Dart VM绑定在Chrome浏览器里的计划。不过这并不是Dart的死刑判决。Google仍然支持并使用Dart开发大型web应用,因为比起JavaScript,Dart更能提高开发效率和保证代码质量。
综上,大家可以看到,web在开发上两个趋势,第一个是从脚本语言层面去改善代码的质量,提高效率,第二是从web标准入手,提供更多抽象的模块化的组件,让编写web应用更加容易。
而说到第二点,不得不提提Google的一个项目叫做Polymer,如果你们去Polymer的网站,你会发现Polymer的口号是「leverage the future of web platform now」。的确,Polymer是一个库用来实现Web component的,而web component是W3C关于下一代 HTML的一个标准,这可是根正苗红的一个项目。可以说Polymer项目的进展某种程度上就代表了下一代HTML标准制定的进展。让我们一起期待在本次IO上Google会对Polymer做出怎样的更新吧。
本文来源:不详 作者:佚名