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

إعداد المشروع

جزء من قسم البرمجة كائنية التوجه في رحلة Lua على Coddy. الدرس 55 من 70.

challenge icon

التحدي

سهل

لنبنِ الأساس لنظام Shape Manager! سيتطور هذا المشروع خلال الدروس القادمة، لذا سنبدأ بإعداد بنية ملفات منظمة مع فئة أساسية Shape.

ستنشئ ملفين لتنظيم التعليمات البرمجية:

  • Shape.lua: عرّف فئة أساسية Shape باستخدام نمط prototype. لكل شكل سمة name (مثل "Circle" أو "Rectangle"). أدرج مُنشئ :new(name) يقبل اسم الشكل، وmethod ‏:getName() يعيده.
  • main.lua: اجعل فئة Shape تعمل من خلال طلب module وإنشاء instance لشكل. اقرأ اسم شكل من input، وأنشئ Shape بهذا الاسم، واطبع نتيجة استدعاء :getName().

ستكون هذه الفئة الأساسية بمثابة الفئة الأب لأشكال محددة مثل Rectangle وCircle في الدروس القادمة. في الوقت الحالي، ركّز على ضبط بنية class بشكل صحيح: إعداد __index، ونمط constructor، وmethod getter.

Input: سطر واحد يحتوي على اسم الشكل (سلسلة نصية).

Output: اسم الشكل الذي يعيده :getName().

جرّب بنفسك

-- استيراد وحدة Shape
local Shape = require('Shape')

-- اقرأ اسم الشكل من الإدخال
local shapeName = io.read()

-- TODO: أنشئ نسخة جديدة من Shape بالاسم المعطى

-- TODO: اطبع نتيجة استدعاء :getName() على الشكل الخاص بك

جميع دروس البرمجة كائنية التوجه

تدرّب بنفسك: مترجم Lua عبر الإنترنت