تعلّم Lua
دورة Lua تفاعلية ومجانية أونلاين. تكتب كود Lua في كل درس، مع تلميحات بالذكاء الاصطناعي حين يخرج لك nil في غير محله، وشهادة مجانية عند الإنهاء.
58,210+ من الـ codders مسجلون
- مناسب للمبتدئين
مساعدة برمجية بالذكاء الاصطناعي
دروس تفاعلية عملية
تعليق صوتي في كل درس
اختبارات لقياس معرفتك
شهادة إتمام مجانية
المنهج
قسم 1
Fundamentals
ابدأ القسمابدأتوسيعطيThe first section in Lua for absolute beginners.مقدمة
3 درسًا216- 01اللغةتحدي
- 02مرحباً بالعالم!تحدياختبار
- 03التعليقاتاختبار
المتغيرات وأنواع البيانات
8 درسًا754- 01ما هو المتغير؟تحدياختبار
- 02الأرقامتحدياختبار
- 03السلاسل النصيةتحدياختبار
- 04القيم المنطقيةتحدياختبار
- 05القيمة 'nil'تحدياختبار
- 06الدالة type()تحدياختبار
- 07قواعد التسميةاختبار
- 08مراجعة - ملف الشخصيةتحدي
المعاملات 1: العمليات الحسابية والدمج
6 درسًا635- 01المعاملات الحسابيةتحدياختبار
- 02معامل باقي القسمةتحدياختبار
- 03معامل الأستحدياختبار
- 04دمج النصوصتحدياختبار
- 05أولوية المعاملاتتحدياختبار
- 06ملخص - حسابات بسيطةتحدي
المعاملات 2: العمليات العلائقية والمنطقية
8 درسًا651- 01معاملات التساويتحدياختبار
- 02المعاملات العلائقيةتحدياختبار
- 03المعامل 'and'تحدياختبار
- 04المعامل 'or'تحدياختبار
- 05المعامل 'not'تحدياختبار
- 06التقييم قصير الدائرةاختبار
- 07قيم Truthy و Falsyاختبار
- 08مراجعة - المنطق البسيطتحدي
الإخراج الأساسي
9 درسًا954- 01طباعة القيم الحرفيةتحدياختبار
- 02طباعة المتغيراتتحدياختبار
- 03طباعة قيم متعددةتحدياختبار
- 04دمج النصوص والمتغيراتتحدياختبار
- 05دالة tostring()تحدياختبار
- 06الإدخال (Input)تحدياختبار
- 07التحويل (Cast)تحدياختبار
- 08مراجعة - تقرير الحالةتحدي
- 09مراجعة - حتى 120تحدي
مشروع: عرض إحصائيات الشخصية
مشروع5 درسًا1- 01رسالة ترحيبتحدي
- 02تعريف إحصائيات الشخصيةمشروع
- 03عرض الإحصائيات الأساسيةمشروع
- 04إضافة Boolean flagمشروع
- 05ملخص نهائيمشروع
المنطق الشرطي الأساسي
4 درسًا423- 01جملة if-thenتحدياختبار
- 02جملة if-then-elseتحدياختبار
- 03جملة elseifتحدياختبار
- 04مراجعة - صندوق الكنزتحدي
أساسيات معالجة النصوص
6 درسًا637- 01string.len()تحدياختبار
- 02string.upper و string.lowerتحدياختبار
- 03string.sub()تحدياختبار
- 04string.rep()تحدياختبار
- 05string.find()تحدياختبار
- 06مراجعة - تنسيق اسم المستخدمتحدي
أساسيات الدوال
6 درسًا636- 01تعريف دالةتحدياختبار
- 02استدعاء دالةتحدياختبار
- 03دوال مع معاملاتتحدياختبار
- 04دوال بمعاملات متعددةتحدياختبار
- 05جملة 'return'تحدياختبار
- 06مراجعة - حاسبة المساحةتحدي
الجداول الجزء 1: نمط القائمة
8 درسًا752- 01ما هو الجدول؟اختبار
- 02إنشاء جدولتحدياختبار
- 03الوصول إلى العناصر عبر الفهرستحدياختبار
- 04تعديل العناصر عبر الفهرستحدياختبار
- 05معامل الطول '#'تحدياختبار
- 06table.insert()تحدياختبار
- 07table.remove()تحدياختبار
- 08ملخص - إدارة أعضاء الفريقتحدي
الجداول 2: بأسلوب القاموس
7 درسًا648- 01أزواج (مفتاح-قيمة)اختبار
- 02إنشاء جداول بأسلوب القاموستحدياختبار
- 03الوصول - تدوين الأقواستحدياختبار
- 04الوصول بتدوين النقطةتحدياختبار
- 05إضافة وتعديل الأزواجتحدياختبار
- 06إزالة الأزواج باستخدام nilتحدياختبار
- 07مراجعة - خصائص العناصرتحدي
أساسيات الحلقات التكرارية
6 درسًا636- 01حلقة whileتحدياختبار
- 02حلقة repeat-untilتحدياختبار
- 03حلقة for الرقميةتحدياختبار
- 04حلقة for مع خطوةتحدياختبار
- 05جملة 'break'تحدياختبار
- 06مراجعة - العد التنازليتحدي
مشروع: متجر جرعات بسيط
مشروع6 درسًا1- 01إعداد المشروعتحدي
- 02إضافة جرعةمشروع
- 03عرض المخزونمشروع
- 04حساب إجمالي قيمة المخزونمشروع
- 05البحث عن جرعة محددةمشروع
- 06بيع جرعةمشروع
نطاق المتغيرات
5 درسًا330- 01المتغيرات العامةاختبار
- 02المتغيرات المحليةتحدياختبار
- 03لماذا نستخدم المتغيرات المحلية؟اختبار
- 04النطاق والكتل البرمجيةتحدياختبار
- 05مراجعة - لغز النطاقتحدي
التحديات النهائية
3 درسًا3- 01مراجعة - دور اللاعبتحدي
- 02مراجعة - قاعدة بيانات بسيطةتحدي
- 03مراجعة - مجموع الأعداد الزوجيةتحدي
قسم 2
Logic & Flow
ابدأ القسمابدأتوسيعطيDevelop problem-solving skills and create dynamic, interactive programsالتكرار المتقدم عبر الجداول
4 درسًا423- 01التكرار باستخدام pairs()تحدياختبار
- 02التكرار باستخدام ipairs()تحدياختبار
- 03pairs() مقابل ipairs()تحدياختبار
- 04مراجعة - ورقة الشخصيةتحدي
المزيد من دوال مكتبة Table
5 درسًا430- 01table.concat()تحدياختبار
- 02إنشاء الجداول و unpack()تحدياختبار
- 03table.sort()تحدياختبار
- 04فرز مخصص باستخدام الدوالاختبار
- 05مراجعة - لوحة أعلى النتائجتحدي
مفاهيم الدوال المتقدمة
6 درسًا539- 01إرجاع قيم متعددةاختبار
- 02الدوال متغيرة الوسائط (...)تحدياختبار
- 03الدوال كقيم من الدرجة الأولىتحدياختبار
- 04الدوال المجهولةتحدياختبار
- 05ما هو الـ Closure؟تحدياختبار
- 06ملخص - معالج أحداث بسيطتحدي
مقدمة إلى Metatables
8 درسًا757- 01ما هو الـ Metatable؟اختبار
- 02setmetatable و getmetatableتحدياختبار
- 03الـ Metamethod المسماة __indexتحدياختبار
- 04الـ Metamethod المسماة __newindexتحدياختبار
- 05الـ Metamethod المسماة __tostringتحدياختبار
- 06الـ Metamethods الحسابية - الجزء الأولتحدياختبار
- 07الـ Metamethods الحسابية - الجزء الثانيتحدياختبار
- 08ملخص - جدول للقراءة فقطتحدي
مشروع: محرك مغامرة نصية
مشروع8 درسًا1- 01إعداد المشروع: الغرفةتحدي
- 02ربط الغرفمشروع
- 03حالة اللاعبمشروع
- 04حلقة اللعبةمشروع
- 05معالجة مدخلات المستخدممشروع
- 06تحريك اللاعبمشروع
- 07معالجة الحركات غير الصالحةمشروع
- 08عرض المخارجمشروع
معالجة الأخطاء
3 درسًا216- 01دالة error()اختبار
- 02الاستدعاءات المحمية باستخدام pcall()تحدياختبار
- 03مراجعة - القسمة الآمنةتحدي
معالجة النصوص المتقدمة
6 درسًا641- 01استخدام string.gsub() للاستبدالتحدياختبار
- 02مقدمة في أنماط النصوصتحدياختبار
- 03string.find()تحدياختبار
- 04string.match()تحدياختبار
- 05التكرار باستخدام string.gmatch()تحدياختبار
- 06مراجعة - محلل ملفات السجلتحدي
مشروع: قائمة جهات الاتصال
مشروع7 درسًا1- 01إعداد المشروعتحدي
- 02الحلقة التكرارية الرئيسيةمشروع
- 03إضافة جهة اتصالمشروع
- 04عرض كافة جهات الاتصالمشروع
- 05البحث عن جهة اتصالمشروع
- 06حذف جهة اتصالمشروع
- 07التعامل مع المدخلات غير الصالحةمشروع
Coroutines للمبتدئين
7 درسًا638- 01ما هو الـ Coroutine؟اختبار
- 02إنشاء واستئناف الـ coroutineتحدياختبار
- 03الإيقاف المؤقت باستخدام coroutine.yield()تحدياختبار
- 04resume و yieldتحدياختبار
- 05التحقق من حالة الـ Coroutineتحدياختبار
- 06مراجعة - مولد الأرقامتحدي
- 07مراجعة - رياضيات المتجهاتتحدي
قسم 3
Object Oriented Programming
ابدأ القسمابدأتوسيعطيDiscover how to organize code with classes, objects, and reusable structuresمفهوم 'Self'
5 درسًا532- 01الجداول مع الدوالتحدياختبار
- 02'self' الصريحتحدياختبار
- 03صيغة النقطتينتحدياختبار
- 04النقطة مقابل النقطتينتحدياختبار
- 05مراجعة - تحريك نقطةتحدي
نمط النموذج الأولي للفئات
6 درسًا641- 01مفهوم النموذج الأوليتحدياختبار
- 02الربط باستخدام __indexتحدياختبار
- 03المنشئ :new()تحدياختبار
- 04تهيئة الخصائصتحدياختبار
- 05نسخ مستقلةتحدياختبار
- 06ملخص - مصنع السياراتتحدي
حالة الكائن وسلوكه
7 درسًا748- 01متغيرات النسخةتحدياختبار
- 02دالات الجلب (Getter Methods)تحدياختبار
- 03دالات التعيين (Setter Methods)تحدياختبار
- 04الخصائص المحسوبةتحدياختبار
- 05تنسيق النصوصتحدياختبار
- 06التحقق من المساواةتحدياختبار
- 07مراجعة - درجة الطالبتحدي
مشروع: بنك رقمي
مشروع7 درسًا1- 01إعداد المشروعتحدي
- 02طريقة الإيداعمشروع
- 03طريقة السحبمشروع
- 04الحصول على الرصيدمشروع
- 05معلومات الحسابمشروع
- 06تحويل الأموالمشروع
- 07اختبار البنك النهائيمشروع
تحميل المعاملات في OOP
5 درسًا531- 01جمع الكائناتتحدياختبار
- 02طرح الكائناتتحدياختبار
- 03دمج الكائناتتحدياختبار
- 04مقارنة الكائنات (<, >)تحدياختبار
- 05مراجعة - رياضيات المحفظةتحدي
أساسيات الوراثة
6 درسًا643- 01إعداد الوراثةتحدياختبار
- 02وراثة الـ Methodsتحدياختبار
- 03توسيع الـ Constructorتحدياختبار
- 04إضافة Methods للابنتحدياختبار
- 05المشترك مقابل الفريدتحدياختبار
- 06ملخص - التسلسل الهرمي للأشكالتحدي
تعدد الأشكال وإعادة التعريف
6 درسًا640- 01إعادة تعريف الدوالتحدياختبار
- 02استدعاء دوال الفئة الأبتحدياختبار
- 03Duck Typingتحدياختبار
- 04واجهة مشتركةتحدياختبار
- 05التحقق من النوعتحدياختبار
- 06مراجعة - أدوار الموظفينتحدي
التغليف
6 درسًا644- 01اصطلاحات التسميةتحدياختبار
- 02استخدام Closures للخصوصيةتحدياختبار
- 03الوصول عبر Closuresتحدياختبار
- 04جداول للقراءة فقطتحدياختبار
- 05منطق التحقق من الصحةتحدياختبار
- 06مراجعة - الخزنة الآمنةتحدي
التركيب و Mixins
6 درسًا642- 01علاقة "يحتوي على" (Has-A)تحدياختبار
- 02التفويض (Delegation)تحدياختبار
- 03Mixins بسيطةتحدياختبار
- 04تطبيق Mixins متعددةتحدياختبار
- 05Mixins مقابل الوراثةتحدياختبار
- 06ملخص - تجميع الروبوتتحدي
مشروع: مدير الأشكال
مشروع7 درسًا1- 01إعداد المشروعتحدي
- 02فئة المستطيلمشروع
- 03فئة الدائرةمشروع
- 04دالة المحيطمشروع
- 05مجموعة الأشكالمشروع
- 06المساحة الإجماليةمشروع
- 07تصفية الأشكالمشروع
أنماط التصميم (مبسط)
5 درسًا532- 01دوال المصنعتحدياختبار
- 02جدول Singletonتحدياختبار
- 03نمط الـ Iteratorتحدياختبار
- 04المراقب (المستمع)تحدياختبار
- 05مراجعة - مصنع الـ Loggerتحدي
التحديات النهائية
4 درسًا4- 01مراجعة - نظام المخزونتحدي
- 02مراجعة - مدير المستخدمينتحدي
- 03مراجعة - متتبع النقاطتحدي
- 04اختبار OOP النهائيتحدي
دورات Lua
دورات Lua تطبيقية، ابدأها مجانًا في متصفحك.
تحديات للمبتدئين - ممارسة المفاهيم الأساسية
شائعاختبر معرفتك البرمجية كمبتدئ وحاول حل هذه التحديات البرمجية، استخدم أي لغة تريدها، برمجة ممتعة!
شهادة عند الإكمال
- 20
- 20
مسائل برمجية
شائعاختبر مهاراتك في حل المشكلات البرمجية من خلال تمارين بمستويات صعوبة مختلفة في هذا المسار. صُمم هذا المسار للمبرمجين الذين لديهم معرفة مسبقة بالقواعد الأساسية لأي لغة برمجة.
شهادة عند الإكمال
- 32
- 31
مسائل برمجية: الجزء الثاني
اختبر مهاراتك في حل المشكلات البرمجية من خلال تمارين بمستويات صعوبة مختلفة في هذا الكورس. تم تصميم هذا الكورس للمبرمجين الذين لديهم معرفة مسبقة بالقواعد الأساسية لأي لغة برمجة، وهو يعد امتداداً للجزء الأول من "مسائل برمجية".
شهادة عند الإكمال
- 25
- 24
Stack - سلسلة هياكل البيانات #1
في هذه الدورة، ستتعلم عن هيكل البيانات Stack، وستقوم بإنشاء Stack من الصفر باستخدام لغتك المفضلة، كما ستتدرب على حل تحديات برمجية باستخدامه!
- 13
- 6
- 1
Heaps وطوابير الأولويات - سلسلة هياكل البيانات #7
جديدفي هذه الدورة، ستتعلم عن هيكل البيانات Heap (العمود الفقري لطوابير الأولويات)، وستقوم بإنشاء MinHeap من الصفر باستخدام لغتك المفضلة، وتتدرب على حل تحديات برمجية باستخدامه!
شهادة عند الإكمال
- 14
- 6
- 1
معسكر أنماط النجوم
استخدم مهاراتك في حل المشكلات البرمجية لتعلم كيفية طباعة أنماط النجوم التي تتراوح بين البسيطة والمعقدة، وذلك باستخدام مستويات مختلفة من الحلقات التكرارية المتداخلة، والجمل الشرطية، والحسابات الرياضية.
- 30
- 28
لماذا تتعلم Lua مع Coddy
- شغّل أكواد Lua حقيقية داخل متصفحك. لا حاجة لتثبيت Lua interpreter ولا لإعداد أي أدوات. كل درس يُشغّل ملف Lua الخاص بك على الخادم ويعرض لك الناتج فورًا.
- Lua كما تُستخدم فعليًا: المتغيرات، التحكم في التدفق، الدوال، tables (بنية البيانات الوحيدة في Lua)، التعامل مع النصوص، metatables وأنماط OOP، ومعالجة الأخطاء. أساسيات Lua التي تحتاجها لـ Roblox أو Love2D أو الـ embedded scripting.
- تلميحات الذكاء الاصطناعي تساعدك على تصحيح سكربتات Lua وقراءة الأخطاء دون أن تكشف لك الحل، فتتحوّل الزلّات الشائعة مثل nil indexing والمصفوفات التي تبدأ من 1 إلى فرص للتعلّم.
- شهادة Lua مجانية عند إكمال الدورة. دليل موثوق إلى جانب ما أنجزته من ألعاب Roblox أو mods أو مشاريع scripting مدمجة.