Ö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 adında bir type alias oluşturun:
numbertipindeidstringtipindebrandnumber?tipinderamInGB(isteğe bağlı)boot—(self: Computer) -> ()şeklinde bir method
İki bilgisayar oluşturun (boot metodunu iki nokta üst üste tanımlama sözdizimi ile ekleyin):
workstation— id1001, brand"Dell", ramInGB16;bootmetodu[brand] is booting up...yazdırırlaptop— id1002, brand"MacBook", ramInGB yok;bootmetodu[brand] is starting...yazdırır
Bir Computer alan ve bir string döndüren specs adında bir fonksiyon oluşturun: RAM bilindiğinde [brand] with [ramInGB] GB of RAM, aksi takdirde [brand] with unknown RAM döndürmelidir.
Sırasıyla şunları yapın:
workstation:boot()çağırınlaptop:boot()çağırınspecs(workstation)değerini yazdırınspecs(laptop)değerini yazdırınworkstationid değerini yazdırın
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 sözdizimi ile bağla
-- 3) ramInGB üzerinde bir 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ımlama