Web geliştirme dünyası JavaScript'in ötesine geçiyor. C, C++ ve Rust gibi dillerle yazılmış kodları tarayıcıda neredeyse "native" hızda çalıştırmamıza olanak sağlayan WebAssembly teknolojisini inceliyoruz.
JavaScript Katili mi, Tamamlayıcısı mı?
Sıkça sorulan bir soru Wasm'ın JavaScript'i yok edip etmeyeceğidir. Cevap: Hayır. WebAssembly, DOM manipülasyonu veya basit mantık işlemleri için değil; video işleme, 3D render motorları ve ağır matematiksel hesaplamalar gibi yüksek performans gerektiren görevler için JS'in en iyi arkadaşı olarak tasarlanmıştır.
// (c) CodeMareFi - codemarefi.com.tr
// Rust ile yazılmış ve Wasm'a derlenmiş bir fonksiyonun JS içinde çağrılması
import init, { calculate_fibonacci } from './pkg/rust_wasm_lib.js';
async function runWasm() {
await init();
// Rust'ın inanılmaz hızıyla Fibonacci hesaplama
const result = calculate_fibonacci(45);
console.log('Sonuç:', result);
}
runWasm();
Kullanım Alanları
Figma'nın tasarım motoru, AutoCAD'in web sürümü ve tarayıcı tabanlı oyun motorları (Unity/Unreal) şu anda gücünü tamamen WebAssembly'den alıyor. Gelecekte daha fazla masaüstü yazılımının Wasm sayesinde web platformuna taşınacağını göreceğiz.
