Menu
CoddyTech

Rangkuman: Pabrik Mobil

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

challenge icon

Tantangan

Mudah

Mari buat Car class lengkap yang merangkum semua yang telah kamu pelajari di bab ini! Kamu akan membuat sistem pabrik mobil, dengan setiap mobil memiliki model dan warna sendiri, sekaligus menunjukkan pengorganisasian module yang tepat dan instance yang independen.

Kamu akan mengatur kodemu dalam dua file:

  • Car.lua: Definisikan Car class dengan mengikuti pola prototype standar. Class-mu memerlukan constructor :new(model, color) yang membuat mobil dengan atributnya sendiri. Sertakan method :describe() agar setiap mobil dapat memperkenalkan dirinya.
  • main.lua: Gunakan require untuk module Car-mu dan buat beberapa instance mobil untuk menunjukkan bahwa setiap mobil mempertahankan state independennya sendiri.

Method :describe()-mu harus mencetak dengan format persis berikut:

A [color] [model]

Kamu akan menerima empat input:

  1. Model untuk mobil pertama
  2. Warna untuk mobil pertama
  3. Model untuk mobil kedua
  4. Warna untuk mobil kedua

Di file utama, buat dua mobil menggunakan input yang diberikan dan minta masing-masing menjelaskan dirinya pada baris terpisah.

Misalnya, jika inputnya adalah Sedan, blue, Truck, dan red, outputnya seharusnya:

A blue Sedan
A red Truck

Setiap mobil harus menyimpan model dan warnanya sendiri, membuktikan bahwa class-mu membuat instance yang benar-benar independen.

Coba sendiri

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

-- Baca input
local model1 = io.read()
local color1 = io.read()
local model2 = io.read()
local color2 = io.read()

-- TODO: Buat dua instance mobil menggunakan Car:new()
-- TODO: Panggil :describe() pada setiap mobil untuk mencetak deskripsinya

Semua pelajaran di Pemrograman Berorientasi Object

Latihan sendiri: Compiler Lua online