WebAssembly dành cho trình duyệt đã sẵn sàng để sử dụng

Ngoc Huynh

Dạng thức lập trình khả chuyển sẽ được mặc định trên Firefox và Chrome vào cuối tháng này, tiếp theo sẽ là Edge và Safari.

WebAssembly – một dạng thức lập trình khả chuyển (portable code format) giúp tăng tốc cho nền tảng web, đã bước sang trạng thái MVP – Minimum Viable Product (tạm dịch: sản phẩm khả thi tối thiểu). Hiện tại các nhà cung cấp trình duyệt có thể chuyển WebAssembly thành mặc định.

Theo ông Luke Wagner – kỹ sư cao cấp của Mozilla, các đại diện của bốn trình duyệt lớn gồm Google Chrome, Microsoft Edge, Mozilla Firefox, and WebKit đã đồng với thiết kế và dạng thức nhị phân mà không cần phải thiết kế gì thêm nữa.

Ông Wagner – người đã làm việc với dự án WebAssembly, cho biết từ thời điểm này, các tính năng sẽ được thiết kế để đảm bảo khả năng tương thích ngược. “Chúng tôi mong đợi WebAssembly sẽ có mặt trong Firefox và Chrome trong tháng này. Chúng tôi không thể nói về thời gian phát hành của Edge và Safari, nhưng vì cả hai trình duyệt đều là mã nguồn mở, nên chúng tôi có thể tuân theo các triển khai tương thích, như vậy có thể sẽ được phát hành trong năm nay”.

Bay giờ, các lập trình viên có thể kiểm thử WebAssembly bằng cách sử dụng Emscripten tool chain. Các bước tiếp theo của project bao gồm hình thành nhóm làm việc W3C để tạo ra tài liệu chi tiết kỹ thuật cho phiên bản ban đầu của WebAssembly và tiếp tục với các tính năng trong tương lai.

WebAssembly là một nỗ lực rất đáng được hoan nghênh vì không chỉ thiết lập để chạy các ứng dụng web trong trình duyệt ở tốc độ near-native mà còn cho phép các ngôn ngữ khác được sử dụng cho lập trình trình duyệt ngoài JavaScript. Nỗ lực này đã thu hút sự chú ý của người sáng lập Brendan Eich, người gần đây bày tỏ mối quan tâm rằng bốn nhà cung cấp trình duyệt có thể sẽ không đồng ý về dự án. Tuy nhiên, Wagner cho biết những người ủng hộ của cả bốn trình duyệt đã tham gia vào WebAssembly Community Group.

Đối với các nhà phát triển, WebAssembly cung cấp thời gian tải nhanh cho các dự án code lớn và hiệu suất theo thời gian chạy gần như native. “Điều này cho phép các nhà phát triển tạo ra chức năng và trải nghiệm cho web mà có thể đã bị giới hạn trên JavaScript.” Vì WebAssembly có thể được sử dụng như một thư viện từ JavaScript, nên các nhà phát triển JavaScript có thể sử dụng hiệu suất của WebAssembly thông qua các thư viện và các framework.

WebAssembly có thể sử dụng các ngôn ngữ khác, chẳng hạn như Python, trong trình duyệt, phụ thuộc vào hệ sinh thái của ngôn ngữ, Wagner nói. “Một yêu cầu được đặt ra để hỗ trợ cho một ngôn ngữ đó là WebAssembly cung cấp các tính năng cần thiết để chạy ngôn ngữ đó một cách hiệu quả. Đối với nhiều ngôn ngữ, điều này đòi hỏi phải thêm các tính năng garbage collection [quản lý bộ nhớ] cho WebAssembly, điều nay đang nằm trên lộ trình phát triển, nhưng sẽ phải mất từ 1-2 năm nữa để hoàn thiện.” Một thách thức khác của việc hỗ trợ một ngôn ngữ là chuyển các thư viện và framework của ngôn ngữ để chạy trong trình duyệt và sử dụng các Web APIs.

Chia sẻ bài viết ngay

Nguồn bài viết : http://www.infoworld.com