Skip to content

AssemblyScript Dökümantasyonu

WebAssembly Geliştirmenin En Hızlı Yolu

AssemblyScript, TypeScript’e benzer bir sözdizimi kullanan ve doğrudan WebAssembly’e derlenen bir programlama dilidir. JavaScript’in performans gerektiren işlemlerinde native hıza ulaşmanızı sağlar.

⚡ Yüksek Performans

WebAssembly, tarayıcıda neredeyse native performans sunar. Görüntü işleme, oyun fizikleri, kriptografi gibi CPU yoğun işlemlerde JavaScript’ten 10-100x daha hızlı olabilir.

📘 TypeScript Benzeri

Typescript sözdizimine aşina iseniz, AssemblyScript öğrenmek çok kolay. Statik tip sistemi, sınıflar, fonksiyonlar ve daha fazlası aynı mantıkla çalışır.

📦 Küçük Boyut

WebAssembly modülleri çok küçük boyutlardadır. Hızlı indirme ve verimli bellek kullanımı sayesinde mobil cihazlarda bile mükemmel performans sunar.

🌐 Web Standartları

Tüm modern tarayıcılarda ve Node.js’te çalışır. Platform bağımsız geliştirme yapabilir, yazdığınız kod her yerde aynı performansı gösterir.

AssemblyScript dökümantasyonu 10 modülden oluşan kapsamlı bir eğitim programı sunar:

  • Modül 0: Giriş ve Hazırlık - WebAssembly temelleri ve ortam kurulumu
  • Modül 1: Temel Sözdizimi ve Türler - Tür sistemi, değişkenler, operatörler
  • Modül 2: Fonksiyonlar ve Kontrol Yapıları - Recursive fonksiyonlar, generic’ler, algoritmalar
  • Modül 3: Nesne Yönelikli Programlama - Sınıflar, kalıtım, interface’ler
  • Modül 4: Standart Kütüphane - Array, String, Map, Math, TypedArray
  • Modül 5: WebAssembly Entegrasyonu - JavaScript ile iletişim, memory yönetimi
  • Modül 6: İleri Seviye Özellikler - SIMD, atomics, operatör overloading
  • Modül 7: Derleyici Kullanımı - CLI seçenekleri, yapılandırma, transform API
  • Modül 8: Portability ve Best Practices - Taşınabilir kod yazma ve optimizasyon
  • Modül 9: Pratik Projeler - Gerçek dünya örnekleri ve use case’ler
  • Modül 10: Ekosistem ve Kaynaklar - Topluluk paketleri ve ileri okuma
// Görüntü İşleme
export function griyeCevir(pixels: Uint8Array): void {
for (let i = 0; i < pixels.length; i += 4) {
let gri: f32 = pixels[i] * 0.299 + pixels[i + 1] * 0.587 + pixels[i + 2] * 0.114;
pixels[i] = pixels[i + 1] = pixels[i + 2] = gri;
}
}
// Kriptografi
export function crc32(data: Uint8Array): u32 {
let crc: u32 = 0xFFFFFFFF;
for (let i = 0; i < data.length; i++) {
crc ^= u32(data[i]);
for (let j = 0; j < 8; j++) {
crc = (crc >>> 1) ^ (0xEDB88320 & -(crc & 1));
}
}
return ~crc;
}

İlk adımı atmak ve geliştirme ortamınızı hazırlamak için başlangıç rehberini inceleyin.

🚀 Hızlı Başlangıç

5 dakika içinde ilk AssemblyScript projenizi oluşturun ve çalıştırın.

📖 Temel Kavramılar

Tür sistemi, değişkenler ve kontrol yapıları ile AssemblyScript temellerini öğrenin.

💻 Örnek Projeler

Gerçek dünya örnekleri ile öğrendiklerinizi pekiştirin.