Özet: Tablo Biçimlerini Tanımlama
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 44 / 73.
Görev
OrtaŞu özelliklere sahip Computer adlı bir tür takma adı oluştur:
id,numbertüründebrand,stringtüründeramInGB,number?türünde (isteğe bağlı)boot:(self: Computer) -> ()yöntemi
İki bilgisayar oluştur (iki nokta üst üste tanımlama söz dizimini kullanarak boot'u bağla):
workstation: id1001, marka"Dell", ramInGB16;bootişlevi[brand] is booting up...yazdırırlaptop: id1002, marka"MacBook", ramInGB yok;bootişlevi[brand] is starting...yazdırır
Bir Computer alan ve string döndüren bir specs işlevi oluştur: RAM biliniyorsa [brand] with [ramInGB] GB of RAM, aksi takdirde [brand] with unknown RAM.
Ardından, sırayla:
workstation:boot()işlevini çağırlaptop:boot()işlevini çağırspecs(workstation)ifadesini yazdırspecs(laptop)ifadesini yazdırworkstation'un id'sini yazdır
Kendin dene
-- Buraya kod yazın
-- 1) Computer tipini tanımla (opsiyonel ramInGB, boot metodu)
-- 2) workstation ve laptop oluştur, boot'u iki nokta üst üste sözdizimiyle bağla
-- 3) ramInGB üzerinde nil kontrolü ile specs yaz
-- 4) ikisini de boot et, her iki specs'i yazdır, workstation.id'yi yazdır
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'ler6Tablo Biçimlerini Tiplendirme
Satır İçi Biçim AçıklamalarıBiçimler İçin Tip Takma Adlarıİsteğe Bağlı ÖzelliklerBiçimler ve Serbest TablolarBiçimleri GenişletmeBiçimlere Metot EklemeSelf ve İki Nokta MetotlarıÖzet: Tablo Biçimlerini TanımlamaKendi başına pratik yap: Online Lua derleyicisi