Neden Luau Kullanılmalı?
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası — ders 2 / 73.
Luau's type sistemi, geliştirmeyi daha güvenli ve daha verimli hale getiren üç büyük avantaj sunar.
Hataları erkenden yakalayın: type denetleyicisi, kodunuzu henüz çalıştırılmadan, siz düzenleme yaparken analiz eder. Klasik bir Lua hatasını ele alalım — number beklenen bir yere nil geçirmek:
-- Lua: nothing warns you about this
local function calculateTotal(price, tax)
return price + tax
end
print(calculateTotal(nil, 0.1))
-- ✗ runtime error: attempt to perform arithmetic on nilDüz Lua'da bu çökme yalnızca hatalı çağrı nihayet çalıştığında gerçekleşir — belki de kullanıcılarınızın gözü önünde. Daha da kötüsü, Lua bazen hatayı tamamen gizler: "50" + 0.1 metnini sessizce dönüştürür ve metin sayısal olmadığı güne kadar 50.1 döndürür… Luau belirteçleri sayesinde bu hata anında işaretlenir:
local function calculateTotal(price: number, tax: number): number
return price + tax
end
calculateTotal(nil, 0.1) -- ✗ type error while editing: nil is not a numberDaha iyi kod okunabilirliği: belirteçler dokümantasyon görevi görür. price: number ifadesi, size ve takım arkadaşlarınıza bir fonksiyonun tam olarak ne beklediğini ve ne döndürdüğünü söyler — tahmin yürütmeye veya kaynak kodun derinliklerine inmeye gerek kalmaz.
Gelişmiş geliştirme araçları: editör her bir değişkenin type bilgisini bildiği için, doğru otomatik tamamlama, daha güvenli refactor ve daha akıllı navigasyon elde edersiniz. Tiplendirilmiş bir değerden sonra nokta yazın ve editör kullanabileceğiniz her şeyi tam olarak listelesin.
Kendin dene
Bu ders bir kod alıştırması içermiyor.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Luau'ya Giriş bölümündeki tüm dersler
1Luau ile Başlarken
Luau Nedir?Neden Luau Kullanılmalı?İlk Luau KodunuzTip Denetimi ve Hata ModlarıÖzet: Luau'ya Giriş4Fonksiyonlarla Çalışmak
Parametreleri ve Geri Dönüş Değerlerini TiplendirmeAnonim Fonksiyonları TiplendirmeHiçbir Şey Döndürmeyen Fonksiyonlarİsteğe Bağlı ParametrelerVarsayılan Parametre DeğerleriDeğişken Sayıda Parametre Alan Fonksiyonlar (Variadic)Fonksiyon Tiplerini TanımlamaÖzet: Tiplendirilmiş Fonksiyonlar2Temel Tipler
Temel Tipler: num, str, bool'any' Tipi: Kaçış Yolu'unknown' TipiNil ve İsteğe Bağlı (Optional) TiplerUygulamada Tip ÇıkarımıAçık Tip BelirteçleriÖzet: Temel Tipler Pratiği5Diğer Adlar (Aliases), Birleşimler, Kesişimler
İlkel Tipler için Tip Diğer Adları (Type Aliases)Birleşim Tipleri (Union Types)Birleşim Tipleri ile ÇalışmakLiteral (Sabit) TiplerKesişim Tipleri (Intersection Types)Tip Diğer Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Tipli Tablolar: Diziler ve Map'ler
Tipli DizilerEleman Ekleme ve OkumaMap Tipi Nedir?Map Bildirimi ve Map'lere ErişimTablolar Üzerinde YinelemeKarma Biçimli TablolarÇok Boyutlu Tipli Dizilertable.unpack ve VarargsÖzet: Diziler ve Map'ler