JavaScript创始人Brendan Eich访谈录(3)
作者:Computerworld 来源:站徒 发布时间:2008-09-16 12:01:00
你怎样看待最近发布的JavaScript框架,比如SproutCode和Objective-J/Cappuccino?你认为他们会给未来的Web应用程序带来什么影响?
Apple的炒作机器无疑使一些人把这个产品当成了Ajax的第二代。对我来说,他们只是进化在不同阶段的JavaScript库和框架而已。包 括 Google GWT和一些比较流行的库,比如Dojo、JQuery、YUI以及Prototype。我不大想看到某个框架或者库过于强大,至少不希望会持续很多年, 最好他们只是在Web的某个领域很流行。在某些特定的设备上开发,你当然没有什么选择的余地,但在Web上就不一样,因为它涵盖的范围非常广,这是无论多 么流行的设备都无法比拟的。
你认为我们有可能会看到桌面应用程序最终走向灭亡么?
我认为不会,但你会看到更多使用Web技术构建的桌面应用程序,他们甚至是安装在本地的,而不是储存在某个Web服务器主机中。当然Web应用程 序也会持续不断的发展。伴随着JavaScript的成长和其他基于浏览器的Web标准的诞生,我们将能看到Web应用程序可以做更多的互动行的工作,而 这些工作以前都是必须使用桌面应用程序来完成的。我们已经在前沿的浏览器中看到离线应用、二维和三维渲染等已经变为事实。
你怎样看待像Flash这样不断流行的插件对JavaScript的流行度带来的影响?
Flash在尽力做到完善的支持Ajax,可以编写脚本,可以在外部访问,和其他插件、像图片和表格这样的内置对象、纯粹的JavaScript 对象一样,以组件的方式嵌入到网页中。开放的网络对待每项技术都是一视同仁的,这也确实妨碍了单一厂商的一枝独秀。你可以通过Flash怎样在Web 2.0的世界中畅游,和微软的Silverlight也瞄准了现代Web世界这个大蛋糕看出一些端倪。
人们不想回到一家厂商的插件充斥着整个网页的时代,所有的网站也会这么想。
首先,展示在最前沿浏览器中的Web标准正在不断进化,并努力与Flash和Silverlight在视频、动画、高性能JavaScript等方面分庭抗争。
其次,没有网站愿意为了“bling”而牺牲“reach”。和插件始终存在不足相比,浏览器天生就会支持各种Web标准,比如JavaScript。用户不会经常更新他们的插件,用户也会拒绝使用某个插件,但会信任并继续使用浏览器。
你认为JavaScript将来会在哪些地方延伸?
首先自然会在浏览器中,但以后可能会更广,比如在服务器端,或者成为一个端到端的编程语言(更多的替代传统意义上桌面或操作系统的脚本职责)。
你是否依旧认为(就像你之前说过的)“ECMAScript和皮肤病一样,只是一个多余的商业名称而已”?
我没有印象说过这句话,但是有一点很确认:这不是一个理想的名字,而且听起来有点像湿疹(eczema)。
你是否依然预计ECMA-262会在2008年10月前发布?你是否期望新版本将会完全向后不兼容?
如果你说的是ECMA-262的第四版,那我的答案肯定是不,我们不指望这个版本会在2008年发布。负责下一个版本的技术委员会(ECMA TC39)正在努力协调各种提议,协调的结果将包含一个短期的3.1版本,这将在2009年春天发布,还包括一个接下来发布的更大的版本(其实也不是特别 大),我们称之为ECMA-262第四版。
JavaScript的不断发展和流行给你带来过什么惊喜么?
JavaScript的流行给了我不小的惊喜。我在很长一段时间里,心里已经默认JavaScript是不会流行的了。原因当然包括那些讨厌的弹 出窗口,但更多是由于这种自由组合的函数和基于原型的对象编程的传统。但后来结果发现,很多程序员本来就是从JavaScript开始学习编程的,还有一 些擅长面向对象编程的程序员,很喜欢这种非传统的组合。
JavaScript从最初的开发到现在,什么是让你最骄傲的?
应该是把优秀的函数和对象原型结合到了一起。对于一个已经标准化的产品,我不会说他有多么完美,因为标准化的过程中扩充了不少的内容,其中包含一些错误。但抛出一些小失误和人为原因,核心的思想完全经住了时间的考验。
你认为编程语言会朝什么方向发展?尤其是在接下来的5-20年间?
未来的编程语言必须在我们都要面对的两个方面做得更好:
* 多核/大规模并行计算机现在已经出现在大家的身边,现在只是出现在台式机上,不久移动设备也会具有相应的能力。计算机科学家们在最近的十五年里,正在努力 使并行计算可以做更多有用的事情,也更加容易使用。JavaScript在多核的世界里面有自己的角色需要扮演,从相对简单的扩展开始,比如Google Gear的工作池,“零共享(shared nothing)”的后台线程,通过浏览器中的JavaScript互相发送和接收消息进行通讯。
* 安全。一个编程语言无法用自身建立起来的安全体系保证安全,因为安全是一套系统属性,涵盖所有层次的抽象,包括上游和下游的语言。但一个编程语言当然可以向用户提供各种更好或者更差的工具来构建安全系统,并证明这些安全属性可以在这个编程语言中得到保证。
你对那些未来的程序员有什么建议么?
学习大师们的经典著作:Knuth、Wirth和Hoare。计算机科学就像一个滚动的轮胎,在学术研究方面,每10-20年就会重复发现一些以 前曾经被发现过的东西。当然,近些年来大家也做了大量的工作,但我要说的,学生们不止要从最近的知识中学习,还要向过去的那些大师们学习。
你还有什么要补充的么?
目前没有了,而且我要回去工作了。
猜你喜欢
- 用XMlhttp生成html页面,相关函数如下:<% ’定义xmlhttp function Get
- MySQL 一级防范检查列表以下是加固你的 Mysql 服务器安全所要做的工作的重要参考:Securing MySQL: step-by-s
- 使用SQLSERVER的应该经常遇到“Unable to read local eventlog (reason:事件日志文件已在读取时间更
- 当然有其它工具可以做这件事,但如果客户不允许你在服务器乱装东西时这个脚本就会有用了。 代码如下:DECLARE @tbImportTable
- 好不容易有些空余时间,便拿来写自己的CSS选择器引擎了,这个CSS选择器引擎的目标只有三个:速度要快代码要精简要支持CSS3的选择器。希望通
- Yahoo!的Exceptional Performance团队为改善Web性能带来最佳实践。他们为此进行了一系列的实验、开发了
- 本文介绍 SQL Server 2000 企业版的新功能 - 索引视图。讲解索引视图并讨论一些提高性能的具体方案。什么是索引视图?许多年来,
- 用XMLHTTP Post Form时的表单乱码有两方面的原因——Post表单数据时中文乱码;服务器Response被XMLHTTP不正确编
- 简单的XML操作:XML文件创建把下面的代码复制到按钮事件中编译执行后可在相应物理路径中产生Pos.xml文件XmlTextWriter x
- jscript 5.7 发布修复了不少ie javascript内存泄露的问题。但是leak依然存在。当我们频繁使用 setInterval
- 一、MySQL修改密码方法总结首先要说明一点的是:一般情况下,修改MySQL密码是需要有mysql里的root权限的,这样一般用户是无法更改
- Web Accessibility Initiative Accessible Rich Internet Applications认识AR
- 很久以前就知道微软的Petshop的很经典,昨天抽出时间去学习,一开始还真的不适应,什么成员资格,还真的看不太懂,运行petshop想从登陆
- 我想大家在用Sql2005一般都是.NET2005自带的SQL Server 2005是SQL Server2005 Express版本的,
- 我正在开发一个档案管理系统,需要从数据库中同时调出图像及相关的文字说明,可我只做到了单纯地显示图片,像有一个数据库CHUNFENG,在数据库
- 一、在访客的内心深处做导航我讨厌迷失,不管是在道路上或是在线网络上。猜想一下?您的访客也是这样的。就像我们期望看到的道路上的路标一样,来帮助
- 因为外贸网站,禁止同行抄袭,所以防止中国ip访问访问,访问的时候有密码提示,这样的代码如何写.请给一个提示.或者有好的代码,请分享下。 &n
- 当数据库服务器变得十分繁忙导致性能下降时,你会怎么办?购买更多的硬件升级你的服务器,还是重新考虑数据库服务器设计使得数据库平台具备良好的可升
- 2008年的圣诞节LOGO依旧延续着2007年的圣诞老人、鹿车、红帽子、圣诞树、蜡烛等元素装点。当然,也少不了雪花,但在LOGO设计上,较0
- 在asp编程中,我们常常使用trim(rtrim ,ltrim)函数去掉一些数据的开头和结尾的空格,笔者最近写了一个asp聊天室,看到下面的