Menu
CoddyTech

Penyiapan Proyek

Termasuk bagian Pemrograman Berorientasi Object dalam perjalanan Lua di Coddy. Pelajaran 55 dari 70.

challenge icon

Tantangan

Mudah

Mari kita bangun fondasi untuk sistem Shape Manager! Proyek ini akan berkembang selama beberapa pelajaran berikutnya, jadi kita akan mulai dengan menyiapkan struktur file yang rapi dan class dasar Shape.

Kamu akan membuat dua file untuk mengatur kodemu:

  • Shape.lua: Definisikan class dasar Shape menggunakan pola prototype. Setiap bentuk memiliki atribut name (seperti "Circle" atau "Rectangle"). Sertakan constructor :new(name) yang menerima nama bentuk, dan method :getName() yang mengembalikannya.
  • main.lua: Buat class Shape-mu berfungsi dengan me-require module dan membuat instance bentuk. Baca nama bentuk dari input, buat Shape dengan nama tersebut, lalu cetak hasil pemanggilan :getName().

Class dasar ini akan menjadi induk bagi bentuk-bentuk tertentu seperti Rectangle dan Circle di pelajaran mendatang. Untuk saat ini, fokuslah memastikan struktur class sudah tepat: pengaturan __index, pola constructor, dan method getter.

Input: Satu baris yang berisi nama bentuk (sebuah string).

Output: Nama bentuk yang dikembalikan oleh :getName().

Coba sendiri

-- Muat module Shape dengan require
local Shape = require('Shape')

-- Baca nama bentuk dari input
local shapeName = io.read()

-- TODO: Buat instance Shape baru dengan nama yang diberikan

-- TODO: Cetak hasil pemanggilan :getName() pada bentukmu

Semua pelajaran di Pemrograman Berorientasi Object

Latihan sendiri: Compiler Lua online