自从2004年以后,伴随着“Ajax”和“Web 2.0”的出现,JavaScript正迎来自己的新生。JavaScript对于“Ajax”或者“Web 2.0”这场革命来说,是必不可少的组成部分。人们开始逐渐正视JavaScript,而且很多开发者都声称自己喜欢做JavaScript的开发。

Brendan Eich于1995年在Netscape发明了JavaScript语言,这个语言在过去的一些年里曾是一个最被误解的语言,随着AJAX和Web 2.0的发展,人们逐渐正视JavaScript。这是一篇Computerworld对Brendan Eich的一次采访,对JavaScript的过去、现在和未来都做了阐述。 原文:http://www.computerworld.com.au/index.php/id;243672124 原文作者:Naomi Hamilton、Brendan Eich(被采访对象) 以下是对原文的翻译:

什么原因促使你去开发JavaScript?

对于JavaScript的早期历史,其实在自己的博客中写过:http://Weblogs.mozillazine.org/roadmap/archives/2008/04/popularity.html 。我在1995年4月4日加入了Netscape,当时的目标是把Scheme语言或者类似的语言嵌入到Netscape的浏览器当中。由于申请没有通过,我加入了Netscape的Server团队,这个团队负责Web服务器和代理服务器方面产品的开发,我在这里工作了一个月,主要进行下一代HTTP的研发。到了五月份的时候,我就被调回当初想加入Client团队,从此我就开始了对JavaScript雏形的开发。

Marc Andreessen和我,连同在Sun工作的Bill Joy,坚信HTML需要一种脚本化的语言,这种语言就算对于新手和业余者来说也会很容易上手,而且这种语言的代码可以直接写在HTML的标记之间,以源代码的形式作为网页的一部分发布。这种信念同时成为了我们的动力。我们打算开发一个“胶水语言”,面向网站的设计者和兼职做网站开发的程序员,以替代以前那种通过图片、插件和Java小程序搭建网站的方式。我们把Java看成是由高薪程序员使用的组件语言,而胶水程序员,也就是那些网页设计师,将通过JavaScript把组件组合起来实现交互。

从这个意义上说,纵观在微软的操作系统和应用程序中使用的编程语言家族中,JavaScript应该和Visual Basic是类似的,而Java和C++类似。所以我们除了可以选择像Java和C++那样“ 真正”的编程语言以外,还可以有一些“小巧”的脚本式语言供选择,比如JavaScript,使得贯穿于编程语言金字塔的分工产生差别,以促进了更多的创新。

遇到过什么特别的需要解决的问题么?

不可编程的网页是静态的,堆砌着文字,充其量把图片放到表格里或者干脆浮动在网页的两侧。通过JavaScript这样的脚本语言,我们可以控制网页上的元素,更改他们的属性并响应事件。实际上,JavaScript在最初的时候就有一个操作浏览器的函数库,但这个库的功能很有限。和服务器之间的通讯方法也仅限于重新加载整个网页。

在JavaScript的开发过程中,遇到过什么必须面对而且特别困难的问题么?

在语言的设计阶段冻结以后,每一个小的开发周期主要就是在检验设计时的想法。我在1995年的5月,用了大概10天的时间开发解释器,包括除了Date对象以外的其它内置对象(Date由其同事Ken Smith协作完成)。95年剩下的日子,我的工作就是把这个引擎嵌入到Netscape浏览器中,并建立那个后来十分著名的DOM(文档对象模型),准确的说应该是 Level 0 DOM,这时候已经可以在JavaScript中通过一系列函数接口控制窗口、文档、链接、图片等对象了,并可以响应事件和通过定时器运行代码。

在1996年中期以前,在Netscape只有我一个人在做JavaScript的开发。

你怎样看待这些年来反对JavaScript的“共鸣”声音?

这些反对的共 鸣都是可以理解的。无论是在网络上、在多用户操作系统中还是在各种兼容的浏览器中,JavaScript都是提供互动性的唯一的编程语言(比其他所有平台都大)。其它的编程语言都是通过插件的形式,而且都是同一家公司开发的,这样就可以通过代码的方式来控制操作性。因此,使用JavaScript和DOM进行开发,曾经是一个很困难的经历。

这无助于Netscape和Microsoft的浏览器战争,猛烈的创新革命促使标准化的过早到来,而且这场战争的结束导致了多年来对JavaScript的忽视,和在IE的垄断下制定各种Web标准。

为什么叫JavaScript?好像开始的时候,JavaScript不叫JavaScript,叫LiveScript……

当时Netscape的产品名称启用了Live这个前缀,比如LiveWire、LiveScript等。但在1995-1996这个时间,Java的发展势头太猛了,如日中天,所以大家决定沾沾光,把名字修改为JavaScript。但必须说明Java与JavaScript技术上的鸿沟还是很大的,而且要填平它真的不容易(纵横于Java和JavaScript的开发者应该有此番的感受)。

你对那些未来的程序员有什么建议么?

学习大师们的经典著作:Knuth、Wirth和Hoare。计算机科学就像一个滚动的轮胎,在学术研究方面,每10-20年就会重复发现一些以前曾经被发现过的东西。当然,近些年来大家也做了大量的工作,但我要说的,学生们不止要从最近的知识中学习,还要向过去的那些大师们学习。

JavaScript从最初的开发到现在,什么是让你最骄傲的?

应该是把优秀的函数和对象原型结合到了一起。对于一个已经标准化的产品,我不会说他有多么完美,因为标准化的过程中扩充了不少的内容,其中包含一些错误。但抛出一些小失误和人为原因,核心的思想完全经住了时间的考验。

JavaScript的不断发展和流行给你带来过什么惊喜么?

JavaScript的流行给了我不小的惊喜。我在很长一段时间里,心里已经默认JavaScript是不会流行的了。原因当然包括那些讨厌的弹出 窗口,但更多是由于这种自由组合的函数和基于原型的对象编程的传统。但后来结果发现,很多程序员本来就是从JavaScript开始学习编程的,还有一些擅长面向对象编程的程序员,很喜欢这种非传统的组合。

你怎样看待像Flash这样不断流行的插件对JavaScript的流行度带来的影响?

Flash 在尽力做到完善的支持Ajax,可以编写脚本,可以在外部访问,和其他插件、像图片和表格这样的内置对象、纯粹的JavaScript对 象一样,以组件的方式嵌入到网页中。开放的网络对待每项技术都是一视同仁的,这也确实妨碍了单一厂商的一枝独秀。你可以通过Flash怎样在Web 2.0的世界中畅游,和微软的Silverlight也瞄准了现代Web世界这个大蛋糕看出一些端倪。

人们不想回到一家厂商的插件充斥着整个网页的时代,所有的网站也会这么想。

首先,展示在最前沿浏览器中的Web标准正在不断进化,并努力与Flash和Silverlight在视频、动画、高性能JavaScript等方面分庭抗争。其次,没有网站愿意为了“bling”而牺牲“reach”。和插件始终存在不足相比,浏览器天生就会支持各种Web标准,比如JavaScript。用户不会经常更新他们的插件,用户也会拒绝使用某个插件,但会信任并继续使用浏览器。

JavaScript最初的核心思想是什么

Web因为它涵盖的范围非常广,这是无论多么流行的设备都无法比拟的,但在Web开发上,你会有很多选择的余地来进行开发 JavaScript最开始的被误解,除了它是讨厌的弹出窗口的始作俑者外,更重要的原因在于JavaScript其自身很“怪”的一种特性,就是“自由组合的函数”和“基于原型的对象编程”,并不为当时擅长面向对象编程的程序员所接受。 JavaScript的影响在不断增长,它不仅已经成为浏览器中脚本的标准,还会成为台式机和其他设备(比如iPhone)中脚本的标准。 JavaScript把优秀的函数和对象原型结合到了一起,核心的思想完全经住了时间的考验。 ——这就是JavaScript最初的核心思想。

大部分的JavaScript都是手写的,我也希望这种情况会一直延续下去。

JavaScript创始人Brendan Eich访谈录相关推荐

  1. (转载)JavaScript创始人Brendan Eich访谈录

    JavaScript创始人Brendan Eich访谈录 Brendan Eich于1995年在Netscape发明了JavaScript语言,这个语言在过去的一些年里曾是一个最被误解的语言,随着AJ ...

  2. JavaScript创始人Brendan Eich访谈录(转)

    简介 Brendan  Eich于1995年在Netscape发明了JavaScript语言,这个语言在过去的一些年里曾是一个最被误解的语言,随着AJAX和Web  2.0的发展,人们逐渐正视Java ...

  3. JavaScript诞生二十年,作者Brendan Eich自述10天内开发出JS语言

    JavaScript 作者 Brendan Eich 制作了一个幻灯片,回顾了他在 1995 年 5 月的 10 天内开发出 JS 语言,描绘了 JS 在当前的演化. Brendan Eich 称,J ...

  4. brendan eich_访谈:Brendan Eich对JavaScript的祝福和诅咒

    brendan eich 成为JavaScript的创造者对Brendan Eich来说是一种祝福和诅咒. 一方面,JavaScript的独特之处在于它是世界上最受欢迎的编程语言. 另一方面,没有语言 ...

  5. 访谈:Brendan Eich对JavaScript的祝福和诅咒

    成为JavaScript的创造者对Brendan Eich来说是一种祝福和诅咒. 一方面,JavaScript的独特之处在于它是世界上最受欢迎的编程语言. 另一方面,没有语言成为更多贪婪的目标. Ei ...

  6. Brendan Eich 谈 Javascript 的起源

    Brendan Eich谈论了Javascript的起源.谈Javascript当 然免不了谈Netscape公司.Netscape由Jim Clark和Marc Andreessen创建,最初是试图 ...

  7. Brendan Eich谈Javascript的起源

    Brendan Eich 谈论了 Javascript 的起源.谈 Javascript 当然免不了谈 Netscape 公司. Netscape 由 Jim Clark 和 Marc Andrees ...

  8. JavaScript之父-Brendan Eich

    JavaScript之父-Brendan Eich Brendan Eich在1995年在Netscape发明了JavaScript语言, 这个语言在过去的一些年里曾是一个最被误解的语言,随着AJAX ...

  9. brendan eich_编程领域的变革者:Brendan Eich

    brendan eich 编程领域的变革者 :这个新博客系列将关注那些已经和/或继续对技术界和编程界产生积极影响的组织,协会和人员! 在第二篇文章中,我们将了解JavaScript的发明者. 这就是B ...

最新文章

  1. 一步一步实现扫雷游戏(C语言实现)(三)
  2. tf.keras.activations.sigmoid 激活函数 示例
  3. Interpreter - 解释器模式
  4. 南邮 Android 课程设计,南邮大四课程设计.doc
  5. 《高级软件测试》实践作业4学习记录12月25日
  6. .NET 实现并行的几种方式(三)
  7. Kubernetes控制器--副本集ReplicaSet
  8. 【快速入门Linux】8_Linux命令—系统信息相关命令(时间、磁盘、进程)
  9. mysql redis hbase_10分钟梳理MySQL核心知识点
  10. linux 软件下载后无法安装不了怎么办,Firefox无法安装怎么办
  11. 最新android studio 第三方库包导入方法jar,so,module
  12. python电影爬取并下载_python爬取电影并下载
  13. DeepLearning论文阅读笔记(一):Cyclical Learning Rates for Training Neural Networks(CLR)
  14. licecap图片区域问题
  15. 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,请用数据流图描述下面系统的业务流程。
  16. APIC Timer
  17. LeetCode 66:Plus One
  18. Oxford Nanopore MinION Sequencing and Genome Assembly
  19. adsafe 罪恶的根源 破软件一个
  20. 计算机基础知识(基础入门小白专属)

热门文章

  1. Codeforces 298B Sail 题解
  2. Tetris game编程过程
  3. 常见浏览器及其内核(国际)
  4. 金数据统计表自动填写
  5. 警察蜀黍动真格,抓捕内鬼390余人、黑客近百人
  6. 法律人如何使用python_执业10年,我见过太多法律人掉进这个大坑!
  7. 三、以太网协议栈uIP移植
  8. 不同网络环境下监控视频统一汇聚集中管理方案介绍
  9. 2021-10-28 集训第三天 神奇的Tom猫
  10. Java基础(17)——字节流、字符流