阅读更多

4顶
0踩

Web前端

原创新闻 John Resig:让JavaScript性能达到极限

2008-10-09 11:04 by 副主编 QQbyte 评论(2) 有14649人浏览
最近著名IT评论网站Ars Technica有了一位新的专栏作家:John Resig,他是jQuery作者和Mozilla JavaScript传道者,他在AT上第一篇文章就非常有质量:让JavaScript性能达到极限

他的文章着重于最近新发布的 Safari 强劲的JavaScript引擎:SquirrelFish Extreme

John Resig 写道
大量的js引擎初始效率优化包括优化现存的虚拟机字节码--尤其在javascript 函数调用。在SquirrelFish 虚拟机中,开发团队开始检查所有可以优化的区域,很多字节码现在被动态翻译成本地机器代码--现在只支持x86 32位架构--这种方式大大提升了效率。

在编译方面的修改,WebKit开发团队重写了正则表达式引擎,结果显著优化了表达式解析效率,速度快了5倍还多。常规的正则表达式在web页面上只小部分使用,但是在应用中影响却是至关重要。比如Processing.js和Objective-J这样的项目翻译了整个程序,用其他的语言编写,也能明显的提升效率。

常规的技术是收缩javascript引擎的实现来优化引擎,但是避免不了还要处理javascript代码,来确定使用对象的类型。但是javascript并没有包含明确的类型系统,javascript引擎引擎经常被迫一次次检查他们处理的数据值来保证正确性。SquirrelFish Extreme收集所有现代js引擎比如V8和TraceMonkey的优点,提供了多态内联缓存(polymorphic inline caching)。有趣的是,这个缓存方式的想法来自 自编译语言(Self programming language 允许对象继承,可以动态地改变他们的继承的状态),是很多javascript的原始想法之一(比如使用原型继承而不是更古典的类似Java的继承方式)。

JavaScript引擎是动态语言优化的最好场所,没有任何其他的语言能够达到JavaScript进步如此迅速的层次,这意味着javascript成为最广泛使用的编程语言成为可能。

SquirrelFish Extreme近期的发布在SunSpider的测试下成为最快的js引擎,将展开新一轮js引擎的良性竞争。




点击查看全文:http://arstechnica.com/journals/linux.ars/2008/10/07/extreme-javascript-performance

4
0
评论 共 2 条 请登录后发表评论
2 楼 jetmc 2009-05-25 14:18
[align=center][/align]
[flash=200,200][/flash]
1 楼 shxiao 2008-10-09 15:57
越快越好, 看来webOS还是有希望的

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • C++ 生成JPEG图片源代码

    跨平台 生成JPG图片的源代码 有库文件 只需要自己编译就可以了

  • 在Visual C++ 6.0下显示JPEG、GIF等格式标准的图像的一种实现起来比较简便的方法

    摘要:本文讲述了在Visual C++ 6.0下显示JPEG、GIF等格式标准的图像的一种实现起来比较简便的方法,对实现过程作有详细的说明。 关键字:图像、JPEG、GIF、Microsoft Visual C++ 6.0   一、 引言 JPEG图像压

  • vc加载jpg图片的方法

    本文转自:http://www.cppblog.com/zhangyq/archive/2008/06/26/46816.html MFC提供的CWnd只有默认加载BMP文件的接口,对JPG等图像是不支持的,而实际中经常需要用到非BMP的图片,在VC中加载.JPG格式的图片,有两种方法,用流对象加载和用IPicture接口加载。 IPicture *m_picture; OLE_XSI

  • delphi 中 image 控件加载bmp、JPG、GIF、PNG等图片的办法

    [delphi] view plain copy procedure TForm1.Button1Click(Sender: TObject);   var     jpg: TJPEGImage; // 要use Jpeg单元   begin     // 显示jpg大图片的方式     jpg := TJPEGImage.Create;     jpg

  • Delphi中加载图片,如何使加载的图片kb变小

    1.Delphi中给自己的程序加一个背景,用image控件。设置align属性为alClient,stretch为true,picture导入要加载的图片。2.当图片过大时,可以用p图软件改变大小,如美图秀秀。我的一张5M的图改成了200多kb,外观不会有什么改变。...

  • Delphi读取jpg文件的问题

    关于delphi读取jpg的例子网上很多,大多数都能实现功能。近来做个项目需要读取jpg文件并保存到sql数据库中,本来觉得没什么,结果浪费了两天的时间。         和大多数情况不同的是,我需要读取一个大于10M的jpg文件到image控件中,发现一直再报错。由于开始没有测试,所以后来只能一行行屏蔽掉代码验证错误的地方,最终屏蔽掉大部分代码后发现,根本就是以下四句的问题。 jpg :=

  • javascript单元测试

    最初,John Resig将QUnit设计为jQuery的一部分。2008年,QUnit才有了自己的名字、主页和API文档,也开始允许其他人用它来做单元测试。但当时QUnit还是基于jQuery的。直到2009年,QUnit才可以完全的独立运行。 b...

  • javascript单元测试及测试框架

    最初,John Resig将QUnit设计为jQuery的一部分。2008年,QUnit才有了自己的名字、主页和API文档,也开始允许其他人用它来做单元测试。但当时QUnit还是基于jQuery的。直到2009年,QUnit才可以完全的独立运行。 b)...

  • 使用Qunit对JavaScript进行单元测试

    最初,John Resig将QUnit设计为jQuery的一部分。2008年,QUnit才有了自己的名字、主页和API文档,也开始允许其他人用它来做单元测试。但当时QUnit还是基于jQuery的。直到2009年,QUnit才可以完全的独立运行。 b) ...

  • Unity 在MVC上的应用(扩展篇:JQuery AJAX)

    jquery由美国人john resig创建,至今已吸引了来自世界各地的众多javascript高手加入其team,包括来自德国的jörn zaefferer,罗马尼亚的stefan petre等等。jquery是继prototype之后又一个优秀的javascrīpt框架。其宗旨...

  • javascript单元测试(转)

    最初,John Resig将QUnit设计为jQuery的一部分。2008年,QUnit才有了自己的名字、主页和API文档,也开始允许其他人用它来做单元测试。但当时QUnit还是基于jQuery的。直到2009年,QUnit才可以完全的独立运行。 b) ...

  • 停靠窗口(DockWindow,DockForm)的实现示例

    原网站大部分是英文,根据英文说明弄出来的代码,停靠功能不错,有些地方的实现可能要用户自己修改,跟DelphiIDE的停靠窗口基本一致,有些细节可能需要自己完善,不过这份代码已经够了

  • C代码生成图片:BMP、PNG和JPEG

    C代码生成图片:BMP、PNG和JPEG

  • 在 Delphi 中,以不封装的模式直接调用 OpenCV C++ Class DLL

    不对 OpenCV 进行二次封装,直接调用 OpenCV 的 C++ 的 Dll, Delphi 测试源码地址:https://github.com/dbyoung720/DOpenCV.git OpenCV 编译好的动态库文件:https://blog.csdn.net/dbyoung/article/details/114871178注意:Delphi 的测试程序,必须放到 OpenCV 的库文件目录下,或者将 OpenCV 的库文件目录放到系统搜索路径中。 ...

  • javascript单元测试及框架介绍

    最初,John Resig将QUnit设计为jQuery的一部分。2008年,QUnit才有了自己的名字、主页和API文档,也开始允许其他人用它来做单元测试。但当时QUnit还是基于jQuery的。直到2009年,QUnit才可以完全的独立运行。 b)...

  • 全球100位最佳工程师,开发人员,编码人员和企业家,可以在线关注他们的github,推特,网站等

    约翰·雷西格 John Resig是一位美国软件工程师和企业家,最著名的是jQuery JavaScript库的创建者和首席开发者。他是Khanacademy的首席软件架构师 推特 | LinkedIn | GitHub | Khanacademy | 网站 44.韦斯·...

  • 测试单元测试javascript单元测试及框架介绍

     最初,John Resig将QUnit计设为jQuery的一部份。2008年,QUnit才有了自己的名字、主页和API文档,也开始答应其他人用它来做单元测试。但时当QUnit还是基于jQuery的。直到2009年,QUnit才可以全完的独立运行。  ...

  • 上周技术关注:流氓软件及反流氓软件的技术分析

    [WEB开发, IIS, 性能] 一些重要的计数器 >> 分析性能日志的时候,我会重点观察下面这些计数器 [开发工具, Javascript] 不可多得的Javascript(AJAX)开发工具 - Aptana >> Aptana是一个java开源项目(.NET程序员应该...

  • 单元测试既模块测试

    javascript单位测试 Admin 2012年8月3日名人名言:从智慧的土壤中生出三片绿芽:好的思想,好的语言,好的行动。——希腊谚语 前端测试一向是困扰大师的一个困难,本文参考了能找到的一些牛博,列举了几种...

Global site tag (gtag.js) - Google Analytics