Proje Kurulumu
Coddy'nin Lua Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 19 / 70.
Görev
KolayDijital Banka projesine başlıyoruz. Sonraki derslerde para yatırabilen, para çekme işlemlerini gerçekleştirebilen, kendisini yazdırabilen ve diğer hesaplara para aktarabilen bir Account sınıfı oluşturacaksın. Her şey temiz bir dosya yapısı ve bir kurucuyla başlar.
İki dosyan:
Account.lua:Accounttablosunu tanımla, örneklerin metotlarını bulabilmesi içinAccount.__index = Accountayarla ve:new()kurucusunu yaz. Bu kurucu boş bir tablo oluşturur, metatablosunuAccountolarak ayarlar, onabalancedeğerinde bir0verir ve tabloyu döndürür. Dosyareturn Accountile biter.main.lua: modülürequire('Account')ile içe aktar,Account:new()ile iki hesap oluştur, her birinin bakiyesini kendi satırında yazdır, ardından iki çağrının iki farklı tablo oluşturduğunu göstermek içinsavings == checkingifadesini yazdır.
Beklenen çıktı:
0
0
falseHer hesap sıfırdan başlar. Sonraki derste bakiyeyi artıran :deposit(amount) metodunu ekleyeceksin.
Kendin dene
-- TODO: Account modülünü require et (dosya Account.lua)
local Account = nil
-- TODO: Account:new() ile iki hesap oluştur
-- TODO: her hesabın bakiyesini yazdır (her satıra bir tane)
-- TODO: iki hesabın aynı tablo olup olmadığını yazdır (olmamalılar)
Nesne Yönelimli Programlama bölümündeki tüm dersler
1'Self' Kavramı
Fonksiyonlu TablolarAçık 'self'İki Nokta SözdizimiNokta vs İki NoktaÖzet - Hareket Eden Nokta4Proje: Dijital Banka
Proje KurulumuPara Yatırma Metodu7Çok Biçimlilik ve Geçersiz Kılma
Metotları Geçersiz KılmaÜst Sınıf Metotlarını ÇağırmaDuck TypingOrtak ArayüzTür KontrolüÖzet - Çalışan Rolleri2Sınıf Prototip Kalıbı
Prototip Kavramı__index ile Bağlama:new() KurucusuÖznitelikleri BaşlatmaBağımsız ÖrneklerÖzet - Araba Fabrikası5OOP'de Operatör Aşırı Yükleme
Nesneleri ToplamaNesneleri ÇıkarmaNesneleri BirleştirmeNesneleri Karşılaştırma (<, >)Özet - Cüzdan Matematiği8Kapsülleme
Adlandırma KurallarıGizlilik için Closure'larClosure'lar Aracılığıyla ErişimSalt Okunur TablolarDoğrulama MantığıÖzet - Güvenli Kasa11Tasarım Kalıpları (Lite)
Fabrika FonksiyonlarıSingleton TablosuIterator KalıbıObserver (Dinleyici)Özet - Logger Fabrikası3Nesne Durumu ve Davranışı
Örnek DeğişkenleriGetter MetotlarıSetter MetotlarıHesaplanmış ÖzelliklerString BiçimlendirmeEşitlik KontrolleriÖzet - Öğrenci Notu6Kalıtımın Temelleri
Kalıtım KurulumuMetot KalıtımıConstructor'ı GenişletmeAlt Sınıf Metotları EklemePaylaşılan ve BenzersizÖzet - Şekil HiyerarşisiKendi başına pratik yap: Online Lua derleyicisi