Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

ملخص - مصنع السيارات

جزء من قسم Object Oriented Programming في رحلة Lua على Coddy — الدرس 11 من 70.

challenge icon

التحدي

سهل

لنقم ببناء فئة Car كاملة تجمع كل ما تعلمته في هذا الفصل! ستقوم بإنشاء نظام مصنع سيارات حيث يكون لكل سيارة طرازها ولونها الخاص، مما يوضح التنظيم الصحيح للوحدات (modules) والمثيلات (instances) المستقلة.

ستقوم بتنظيم الكود الخاص بك عبر ملفين:

  • Car.lua: قم بتعريف فئة Car باتباع نمط النموذج الأولي (prototype pattern) القياسي. تحتاج فئتك إلى منشئ :new(model, color) يقوم بإنشاء سيارات بخصائصها الخاصة. قم بتضمين تابع :describe() يسمح لكل سيارة بتقديم نفسها.
  • main.lua: استدعِ وحدة Car الخاصة بك وقم بإنشاء مثيلات متعددة للسيارات لإثبات أن كل سيارة تحتفظ بحالتها المستقلة.

يجب أن يقوم التابع :describe() بالطباعة بهذا التنسيق الدقيق:

A [color] [model]

ستتلقى أربعة مدخلات:

  1. طراز السيارة الأولى
  2. لون السيارة الأولى
  3. طراز السيارة الثانية
  4. لون السيارة الثانية

في ملفك الرئيسي، قم بإنشاء سيارتين باستخدام المدخلات المقدمة واجعل كل واحدة تصف نفسها في سطر منفصل.

على سبيل المثال، إذا كانت المدخلات هي Sedan، و blue، و Truck، و red، فيجب أن تكون النتيجة:

A blue Sedan
A red Truck

يجب أن تخزن كل سيارة طرازها ولونها الخاص، مما يثبت أن فئتك تنشئ مثيلات مستقلة حقاً.

جرّب بنفسك

-- استدعاء وحدة Car
local Car = require('Car')

-- قراءة المدخلات
local model1 = io.read()
local color1 = io.read()
local model2 = io.read()
local color2 = io.read()

-- TODO: إنشاء مثيلين للسيارة باستخدام Car:new()
-- TODO: استدعاء :describe() لكل سيارة لطباعة أوصافها

جميع دروس Object Oriented Programming