JavaScript Benchmark Test

Wednesday, March 10, 2010 Unknown 0 Comments

http://lh6.ggpht.com/_t-TerzRlVWg/S5ac0_DkAKI/AAAAAAAACRM/AgWBPsVm0T0/java_icon2.gif

JavaScript là ngôn ngữ lập trình mới do một nhóm nhỏ các nhà khoa học của hãng Sun Microsystems sáng tạo nên, dựa trên nguyên mẫu với cú pháp phát triển từ C. Giống như C, JavaScript có khái niệm từ khóa, do đó, JavaScript gần như không thể được mở rộng. Ngôn ngữ này được dùng rộng rãi cho các trang web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối tượng nằm sẵn trong các ứng dụng. Nó vốn được phát triển bởi Brendan Eich tại Hãng truyền thông Netscape với cái tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript, và cuối cùng thành JavaScript. Trên trình duyệt, rất nhiều trang web sử dụng JavaScript để thiết kế trang web động và một số hiệu ứng hình ảnh thông qua DOM. JavaScript được dùng để thực hiện một số tác vụ không thể thực hiện được với chỉ HTML như kiểm tra thông tin nhập vào, tự động thay đổi hình ảnh,... Ở Việt Nam, JavaScript còn được ứng dụng để làm bộ gõ tiếng Việt giống như bộ gõ hiện đang sử dụng trên trang Wikipedia tiếng Việt. Tuy nhiên, mỗi trình duyệt áp dụng JavaScript khác nhau và không tuân theo chuẩn W3C DOM, do đó trong rất nhiều trường hợp lập trình viên phải viết nhiều phiên bản của cùng một đoạn mã nguồn để có thể hoạt động trên nhiều trình duyệt. Một số công nghệ nổi bật dòng JavaScript để tương tác với DOM bao gồm DHTML, Ajax và SPA.

Tốc độ "xử lý" JavaScript của các trình duyệt là rất quan trọng, đôi khi bạn vào một trang web nào đó và đột ngột trình duyệt bị treo, CPU Usage tăng cao, thậm chí gây treo cả máy tính, đó thường là do trang web có chứa quá nhiều đoạn mã JavaScript cần được xử lý. Khi đó, bạn có thể sẽ nhận được một cảnh báo tương tự như sau:

http://lh5.ggpht.com/_t-TerzRlVWg/S5aRUj0wnfI/AAAAAAAACQc/dpqAscW6PDs/JavaScript%20Benchmark%20Test%2001.jpg

Bạn hoàn toàn có thể kiểm tra và chấm điểm các trình duyệt của mình với việc xử lý các đoạn mã JavaScript, tất nhiên, đây không phải là một phân tích chuyên nghiệp, nhưng nó lại dễ thực hiện, khá chính xác và cho kết quả tức thì.

Dưới đây tôi thực hiện việc đo tốc độ xử lý JavaScript trên các trình duyệt phổ biến nhất hiện nay, gồm:

  • Google Chrome 4.0.249.89 (38071)
  • Mozilla Firefox 3.6
  • Internet Explorer 8.0.7600.18365
  • Safari 4.0.4 (531.21.10)
  • Opera 10.10.1983

Thử nghiệm được tiến hành trên HĐH Windows 7 Ultimate 32 bit, Intel Core 2 Duo 1,6 GHz, 3GB RAM.

Và kết quả:

SunSpider JavaScript Benchmark: http://www2.webkit.org/perf/sunspider-0.9/sunspider.html

http://lh6.ggpht.com/_t-TerzRlVWg/S5aRWsgRHBI/AAAAAAAACQk/1_MVdI_0mlY/s640/SunSpider%20JavaScript%20Benchmark%20details.jpg
Kết quả chi tiết về thử nghiệm đo khả năng xử lý các tác vụ của SunSpider JavaScript


Thời gian càng nhỏ càng tốt (đơn vị: ms - mili-giây)

  1. Chrome: 775 ms
  2. Safari: 827,8 ms
  3. Firefox: 1732,6 ms
  4. Opera: 5098,6 ms
  5. Internet Explorer: 7897,6 ms

http://lh6.ggpht.com/_t-TerzRlVWg/S5aRV4B0rDI/AAAAAAAACQg/tuBuE_WtI0k/s640/SunSpider%20JavaScript%20Benchmark.jpg
Google Chrome đạt thời gian xử lý ngắn nhất, tốc độ nhanh nhất, theo sát là Safari, còn IE đứng cuối bảng


V8 Benchmark Suite – version 5: http://v8.googlecode.com/svn/data/benchmarks/v5/run.html

http://lh4.ggpht.com/_t-TerzRlVWg/S5aRYVaQNII/AAAAAAAACQs/JTXzR9swGNo/s640/V8%20Benchmark%20Suite%20%E2%80%93%20version%205%20Details.jpg
Kết quả chi tiết về thử nghiệm đo khả năng xử lý các tác vụ của V8 Benchmark Suite v5

Điểm càng cao càng tốt

  1. Chrome: 2109
  2. Safari: 1196
  3. Firefox: 199
  4. Opera: 144
  5. Internet Explorer: 47,6

http://lh6.ggpht.com/_t-TerzRlVWg/S5aRXsDhKzI/AAAAAAAACQo/qvVy5Io-D60/s640/V8%20Benchmark%20Suite%20%E2%80%93%20version%205%20Score.jpg
Chrome đạt điểm cao nhất, bỏ xa 4 trình duyệt còn lại. IE vẫn đứng cuối bảng

Theo kết quả trên, Google Chrome có tốc độ xử lý JavaScript nhanh nhất, Safari có tốc độ gần tương đương Chrome, và tệ nhất là Internet Explorer. Như vậy, khi bạn làm việc với JavaScript hay mở các trang chứa nhiều mã JavaScript thì Google Chrome nên là lựa chọn hàng đầu, và tốt nhất là bạn không nên sử dụng Internet Explorer để lướt web, vì nó có tốc độ tải trang chậm, mở tab chậm, và còn thiếu an toàn nữa.

Hiện nay tôi sử dụng trình duyệt chính là Google Chrome và trình duyệt này ngày càng cho thấy khả năng chạy ổn định, tốc độ cao, mượt, giao diện hoàn hảo. Cùng với các dịch vụ gia tăng ngày càng nhiều của Google như YouTube, Google Wave, Google Buzz,...tôi nghĩ rằng Chrome nên là ưu tiên hàng đầu trong danh sách các trình duyệt được người sử dụng máy tính lựa chọn.





JavaScript không phải là một tên khác của Java
JavaScript là ngôn ngữ kịch bản để thông dịch (interpreted scripting language). Java là ngôn ngữ lập trình đích thực để biên dịch (complied programming language). Java và JavaScript chỉ có chung vài điểm nhỏ về ngữ pháp có thể làm các nhà lập trình quan tâm. Xét về tổng thể chúng là hai công cụ khác nhau hoàn toàn. 
Về kỹ thuật, Java chỉ là ngôn ngữ lập trình nhưng có mục tiêu rất xa: nó cho phép lập trình viên tạo các bản sao chương trình mà người dùng có thể chạy trên hầu hết các hệ máy và hệ điều hành. Khả năng này thường được gọi là "viết một lần, chạy mọi nơi" (write once, run anywhere) là một lợi thế cực lớn. Nó biến Java thành công nghệ chủ chốt trong máy tính mạng (NC) và là thành phần sống còn của lập trình Web.
Sự khác biệt giữa Java app (ứng dụng Java) và Java applet là gì?
Ứng dụng (app) là một chương trình độc lập mà bạn có thể chạy trên máy của mình. Các ứng dụng phi-Java có rất nhiều, trong đó có cả tá bạn đang dùng như Microsoft Word hay Excel. Cho đến nay mới có rất ít ứng dụng Java. Java applet thường chỉ là các chương trình nhỏ hơn nhiều. Chúng chỉ chạy bên trong trình duyệt Web của bạn.

0 comments: