首页 » 科技 » Javascript做为编程语言

Javascript做为编程语言

由于我在Mozilla工作的关系,我准备多谈谈Javascript 2.0。这个牵涉到很多事情(从阅读规范,Javascript在非web领域的使用,自学SML).然而,或许里面我正在面对的最有挑战的事情是量化和了解正在变化中的语言以及如何把Javascript用于一般的编程工作。 透过历史,我们发现Javascript做为一门语言已经或正在经历以下几个阶段: “我们需要一种适合web表现层的脚本”阶段(Netscape) “我们应该把它标准化”阶段(ECMAScript) “Javascript不是一个玩具”阶段(Ajax) “Javascript做为编程语言”阶段 我猜测我们正在进入一个新的阶段,就是Javascript将被视为一个重要的编程语言-脱离web表现层开发概念。下面这两个重要的变动导致我相信,我们正处在一个Ja.....

由于我在Mozilla工作的关系,我准备多谈谈Javascript 2.0。这个牵涉到很多事情(从阅读规范,Javascript在非web领域的使用,自学SML).然而,或许里面我正在面对的最有挑战的事情是量化和了解正在变化中的语言以及如何把Javascript用于一般的编程工作。
透过历史,我们发现Javascript做为一门语言已经或正在经历以下几个阶段:

“我们需要一种适合web表现层的脚本”阶段(Netscape)
“我们应该把它标准化”阶段(ECMAScript)
“Javascript不是一个玩具”阶段(Ajax)
“Javascript做为编程语言”阶段

我猜测我们正在进入一个新的阶段,就是Javascript将被视为一个重要的编程语言-脱离web表现层开发概念。下面这两个重要的变动导致我相信,我们正处在一个Javascript新纪元的开始阶段。

Javascript的速度
一个很好的信号就是我们开始担心Javascript的速度。这个是每个伟大语言发展的一个过程(先标准化然后执行标准,最后就是关心速度)
做为佐证,让我们看看几家主要的浏览器厂商正在做的工作:
Mozilla正在开发Tamarin (JIT JavaScript)
Apple正在开发Webkit/Safari 3 (重写JS引擎)
Opera在Opera9.5中发布新的JS引擎(新的特性和性能提升)
Microsoft正在开发Internet Explorer 8.0 (定义了很多JS方面的工作)

非web应用
我已经看到太多的方案把javascript应用在非“传统”领域。尤其是和Rhino(一个在Java和JVM上的Javascript实现)相关的领域。
我们特别需要关注下面两个项目:
JavaScript on Rails - 当然这个项目很可能是子虚乌有的,但是它应该引起我们的注意. 尤其是我们发现大部分软件开发者在博客中谈到如何用Javascript重写Ruby On Rails框架,使它运行在Rhino上面。我们能够从中看出一些倾向。
Helma - 这个web应用软件框架做为一个使用Javascript的在服务器端开发项目很长时间了(使用Rhino)。很令人意外的是它只是在一些Javascript开发者中流传。我近期注意到一些创业的朋友开始基于它来开发应用。我确信我们在未来数月内会听到这个小框架。
上面这一切都引出我的一个观点:Javascript正在向成为一门通用语言积极推进。虽然它最受欢迎的领域应该永远在Web开发上,但是经过未来几年的发展,它也一定能够应用到服务器端的广阔的领域。
目前是个绝佳的机会--让我们把Javascript缺乏的东西加进去,把它从一个表现层的玩具变成专业的开发工具。

【本文翻译仅为外语学习及阅读目的,原文作者个人观点与译者及译言网无关】

0

返回正文评论

      因为做译言,真正学习了javascript,知道了prototype,closure... 确实是个amazing的语言。不过作为通用编程工具还是太单薄了。例如Array的功能就不好。出道题给有兴趣的:如何从一个javascript array里删除一个element?

      回一楼的
      array_name.splice(indexNumber,numberOfElementsToRemove, itemToAdd1,itemToAdd2 ...)
      这个就可以删除随便哪个范围的数据,或者添加任意数量的数组元素。
      Javascript正在不断发展中,脚本类语言或多或少都有一些达不到的功能,各自在特定领域还是非常有用的