Özet - Hareket Eden Nokta
Coddy'nin Lua Journey'sinin Object Oriented Programming bölümünün bir parçası — ders 5 / 70.
Görev
Kolayİki alana sahip point adında bir tablo oluşturun:
x- x koordinatıy- y koordinatı
self.x değerine dx ve self.y değerine dy ekleyen, iki nokta (colon) sözdizimini kullanan bir :move(dx, dy) metodu ekleyin.
Dört girdi alacaksınız:
- Başlangıç x koordinatı
- Başlangıç y koordinatı
- Delta x (yatayda hareket miktarı)
- Delta y (dikeyde hareket miktarı)
Başlangıç koordinatlarıyla noktayı oluşturduktan ve delta değerleriyle :move() metodunu çağırdıktan sonra, son konumu tam olarak şu formatta yazdırın:
[x], [y]Örneğin, başlangıç konumu (3, 5) ise ve (2, -1) kadar hareket ettirirseniz, çıktı şu şekilde olmalıdır:
5, 4Kendin dene
-- Girdileri oku
local initial_x = tonumber(io.read())
local initial_y = tonumber(io.read())
local dx = tonumber(io.read())
local dy = tonumber(io.read())
-- YAPILACAK: Kodunuzu aşağıya yazın
-- 1. x ve y alanlarına sahip (başlangıç koordinatlarını kullanan) 'point' adında bir tablo oluşturun
-- 2. self.x ve self.y değerlerini değiştiren, iki nokta üst üste sözdizimini kullanan bir :move(dx, dy) metodu ekleyin
-- move metodunu çağırın ve sonucu yazdırın
point:move(dx, dy)
print(point.x .. ", " .. point.y)Object Oriented Programming 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şisi