Menu
Coddy logo textTech

Proje Kurulumu

Coddy'nin Lua Journey'sinin Object Oriented Programming bölümünün bir parçası — ders 55 / 70.

challenge icon

Görev

Kolay

Bir Şekil Yöneticisi (Shape Manager) sisteminin temelini oluşturalım! Bu proje önümüzdeki birkaç ders boyunca büyüyecek, bu yüzden temel bir Shape sınıfı ile temiz bir dosya yapısı kurarak başlayacağız.

Kodunuzu düzenlemek için iki dosya oluşturacaksınız:

  • Shape.lua: Prototip desenini kullanarak temel bir Shape sınıfı tanımlayın. Her şeklin bir name özniteliği ( "Circle" veya "Rectangle" gibi) vardır. Şeklin adını kabul eden bir :new(name) kurucusu (constructor) ve bu adı döndüren bir :getName() metodu ekleyin.
  • main.lua: Modülü require ederek ve bir şekil örneği (instance) oluşturarak Shape sınıfınızı hayata geçirin. Girdiden bir şekil adı okuyun, bu adla bir Shape oluşturun ve :getName() metodunu çağırmanın sonucunu yazdırın.

Bu temel sınıf, gelecek derslerde Rectangle ve Circle gibi belirli şekiller için ebeveyn (parent) görevi görecektir. Şimdilik sınıf yapısını doğru kurmaya odaklanın; __index kurulumu, kurucu deseni ve getter metodu.

Girdi: Şekil adını içeren tek bir satır (bir dize).

Çıktü: :getName() tarafından döndürülen şeklin adı.

Kendin dene

-- Shape modülünü dahil et
local Shape = require('Shape')

-- Şekil adını girdiden oku
local shapeName = io.read()

-- TODO: Verilen adla yeni bir Shape örneği oluştur

-- TODO: Şekliniz üzerinde :getName() çağırmanın sonucunu yazdırın

Object Oriented Programming bölümündeki tüm dersler