Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Selama lebih dari dua dekade, JavaScript adalah satu-satunya bahasa pemrograman yang dapat berjalan di browser. Bahasa lain seperti Python, C++, dan Go terutama untuk membangun sisi server aplikasi dan layanan web.

JavaScript bekerja dengan cukup baik, tetapi banyak bahasa pemrograman lain yang lebih cepat. Ada banyak manfaat yang dapat dimanfaatkan oleh aplikasi web dengan menjalankan bahasa pemrograman lain yang lebih berperforma baik langsung di browser.

WebAssembly menawarkan opsi yang efisien, terbuka, dan aman yang merupakan bagian dari platform web terbuka. Anda dapat menggunakannya untuk membuat aplikasi yang berjalan di browser, server, dan di lingkungan lain.

Memperkenalkan WebAssembly

WebAssembly (WASM) adalah bahasa standar W3C yang efisien, tingkat rendah, dan portabel. Ini mendefinisikan format kode dan antarmuka untuk program untuk berinteraksi dengan platform di web.

instagram viewer

Anda dapat mengkompilasi sebagian besar bahasa pemrograman ke dalam format kode biner WebAssembly. Browser dapat menginterpretasikan dan menjalankan kode WASM yang dihasilkan seperti yang mereka lakukan dengan JavaScript biasa. Anda juga dapat menjalankan WebAssembly bersama kode JavaScript untuk kinerja aplikasi yang lebih tinggi dan interoperabilitas di antara keduanya.

WebAssembly menjadi standar W3C pada tahun 2019, dengan dukungan dalam banyak bahasa pemrograman. Berdasarkan Dibuat dengan WebAssembly, sudah ada banyak proyek populer yang menggunakan WebAssembly untuk mengirimkan perangkat lunak yang cepat dan aman kepada penggunanya.

Banyak bahasa pemrograman, termasuk yang khusus untuk sisi server, mendukung WebAssembly. Ini termasuk Rust, Go, Python, C++, TypeScript, Java, PHP, dan Ruby. Lihat sumber daya awesome-wasm-langs untuk mempelajari tentang bahasa yang didukung WebAssembly dan paket yang dapat Anda gunakan dengannya.

Ini sebuah contoh Program WebAssembly dari Tutorials Point yang mengembalikan maksimal dua bilangan bulat:

Sintaks WebAssembly relatif bertele-tele dibandingkan dengan JavaScript, tetapi itu seharusnya tidak menjadi masalah. Anda tidak perlu mempelajari sintaks karena WebAssembly akan menjadi target kompilasi untuk program yang Anda tulis dalam bahasa pilihan Anda.

Bagaimana WebAssembly Bekerja

WASM ada sebagai target kompilasi untuk bahasa pemrograman lain untuk diubah. Anda dapat menulis di bahasa pemrograman favorit Anda dan kompilasi kode sumber ke bytecode WASM yang berjalan di klien. Menerjemahkannya ke dalam kode mesin asli berarti dapat berjalan dengan kecepatan tinggi, biasanya lebih cepat dari JavaScript.

Salah satu fitur penting WASM adalah interoperabilitas JavaScript. Anda dapat mengimpor modul WASM ke aplikasi web dan menampilkan fungsi WASM untuk digunakan dalam kode JavaScript. Kerangka kerja JavaScript dapat memanfaatkan WASM untuk kinerja yang lebih tinggi.

WASM menggunakan model eksekusi kotak pasir yang mirip dengan JavaScript. WASM berinteraksi dengan mesin host menggunakan ABI (Application Binary Interface) seperti Antarmuka Sistem WebAssembly yang menyediakan akses ke sumber daya dan layanan sistem lainnya berdasarkan kebutuhan program.

Banyak browser modern mendukung WASM, termasuk Chrome, Microsoft Edge, Mozilla Firefox, Opera, dan Safari. Bahasa seperti Go dan WASM dukungan karat keluar dari kotak.

Mengapa Web Membutuhkan WebAssembly

JavaScript memiliki fungsi terbatas berdasarkan desain. Itu bukan salah satunya bahasa tercepat atau paling berkinerja sejak dimulai sebagai bahasa scripting untuk web. Meskipun ada banyak runtime di mana JavaScript berjalan dengan kecepatan yang berbeda-beda, ada yang lebih cepat dan lebih banyak lagi bahasa berkinerja yang dapat dibawa oleh WebAssembly ke web untuk kasus penggunaan seperti game, video, dan musik.

WebAssembly juga menawarkan lebih banyak portabilitas dan fleksibilitas untuk bahasa yang tidak berjalan di web. Memperkenalkan lebih banyak bahasa ke web (platform sumber terbuka paling populer) akan menghasilkan pengalaman yang lebih baik secara keseluruhan.

Adopsi WebAssembly Berkecepatan Cepat

Banyak perusahaan dan pengembang membangun aplikasi dengan WebAssembly. Google, Dropbox, dan Cloudflare secara aktif menggunakan WebAssembly di beberapa aplikasi mereka.

WebAssembly populer di kalangan pengembang Python, C++, dan Rust. Pengembang Python umumnya menggunakan Pyoidide dan PyScript, pengembang C++ dan Emscripten, dan pengembang Rust dengan kerangka kerja Percy, Yew, Sycamore, MoonZoon, dan Seed.