جديدرحلة
تعلّم Ruby
دورة Ruby أونلاين مجانية وتفاعلية. تكتب Ruby في كل درس — الصياغة، الـ blocks، الـ classes، الـ modules، وأسلوب Ruby الاصطلاحي — مع تلميحات بالذكاء الاصطناعي عند ظهور أي خطأ، وشهادة إتمام مجانية عند الانتهاء.
3,420+ من الـ codders مسجلون
- مناسب للمبتدئين
مساعدة برمجية بالذكاء الاصطناعي
دروس تفاعلية عملية
تعليق صوتي في كل درس
اختبارات لقياس معرفتك
شهادة إتمام مجانية
المنهج
قسم 1
الأساسيات
ابدأ القسمابدأتوسيعطيابنِ أساساً قوياً من خلال المفاهيم الجوهرية والمهارات الأساسيةمقدمة إلى Ruby
3 درسًا217- 01ما هي Ruby؟تحديصوت
- 02Hello Worldتحدياختبارصوت
- 03التعليقات في Rubyاختبارصوت
المتغيرات وأنواع البيانات
7 درسًا750- 01الأرقام والمتغيراتتحدياختبارصوت
- 02نوع البيانات Stringتحدياختبارصوت
- 03نوع البيانات Booleanتحدياختبارصوت
- 04نوع البيانات Symbolتحدياختبارصوت
- 05التحقق من أنواع البياناتتحدياختبارصوت
- 06قواعد التسميةتحدياختبارصوت
- 07ملخص - إنشاء المتغيراتتحدي
المعاملات - الجزء الأول
5 درسًا534- 01المعاملات الحسابيةتحدياختبارصوت
- 02معامل باقي القسمةتحدياختبارصوت
- 03اختصارات العمليات الحسابيةتحدياختبارصوت
- 04مراجعة - العمليات الرياضية البسيطةتحدي
- 05معاملات المقارنةتحدياختبارصوت
المعاملات - الجزء الثاني
5 درسًا534- 01المعاملات المنطقية - الجزء الأولتحدياختبارصوت
- 02المعاملات المنطقية - الجزء الثانيتحدياختبارصوت
- 03مراجعة - المنطق البسيطتحدي
- 04المعاملات المنطقية - الجزء الثالثتحدياختبارصوت
- 05المعاملات المنطقية - الجزء الرابعتحدياختبارصوت
اتخاذ القرار
5 درسًا533- 01جملة Ifتحدياختبارصوت
- 02جملة If - Elseتحدياختبارصوت
- 03مراجعة - آلة حاسبة بسيطةتحدي
- 04جملة If - Else المتداخلةتحدياختبارصوت
- 05جملة Unlessتحدياختبارصوت
أساسيات الإدخال والإخراج
8 درسًا850- 01الإخراج باستخدام putsتحدياختبارصوت
- 02الإخراج باستخدام print و pتحدياختبارصوت
- 03الإخراج باستخدام المتغيراتتحدياختبارصوت
- 04الإدخال باستخدام getsتحدياختبارصوت
- 05دالة Chompتحدياختبارصوت
- 06تحويل أنواع البياناتتحدياختبارصوت
- 07مراجعة - حاسبة العمرتحدي
- 08مراجعة - صح أم خطأتحدي
حاسبة تقسيم الفاتورة
مشروع5 درسًا1- 01رسالة الترحيبتحدي
- 02الحصول على مدخلات المستخدممشروع
- 03حساب البقشيش والإجماليمشروع
- 04تقسيم الفاتورةمشروع
- 05مخرجات منسقةمشروع
الحلقات التكرارية
9 درسًا960- 01حلقة For مع النطاقاتتحدياختبارصوت
- 02حلقة Whileتحدياختبارصوت
- 03Breakتحدياختبارصوت
- 04Nextتحدياختبارصوت
- 05مراجعة - المضروب (Factorial)تحدي
- 06حلقة Timesتحدياختبارصوت
- 07حلقة Untilتحدياختبارصوت
- 08الحلقات المتداخلةتحدياختبارصوت
- 09مراجعة - الإدخال الديناميكي (Dynamic Input)تحدي
الدوال (Methods)
6 درسًا634- 01تعريف الدالةتحدياختبارصوت
- 02معاملات الدالةتحدياختبارصوت
- 03قيم الإرجاعتحدياختبارصوت
- 04مراجعة - دالة Sigmaتحدي
- 05مراجعة - دالة Validationتحدي
- 06القيم الافتراضية للمعاملاتتحدياختبارصوت
FizzBuzz بلمسة إضافية
مشروع4 درسًا1- 01نظرة عامة على اللعبةتحدي
- 02طريقة FizzBuzzمشروع
- 03التكرار عبر الأرقاممشروع
- 04إضافة التعديل الجديدمشروع
المصفوفات
7 درسًا744- 01إنشاء المصفوفاتتحدياختبارصوت
- 02الوصول إلى عناصر المصفوفةتحدياختبارصوت
- 03تعديل المصفوفاتتحدياختبارصوت
- 04دوال المصفوفاتتحدياختبارصوت
- 05مراجعة - مصفوفة النواتجتحدي
- 06مراجعة - المصفوفة المعكوسةتحدي
- 07اختصارات المصفوفاتتحدياختبارصوت
التكرار عبر المجموعات
4 درسًا434- 01المكرر Eachتحدياختبارصوت
- 02Each مع الفهرستحدياختبارصوت
- 03التكرار عبر النصوصتحدياختبارصوت
- 04الدالتان Map و Collectتحدياختبارصوت
المصفوفات المتقدمة
4 درسًا435- 01تقطيع المصفوفات باستخدام النطاقاتتحدياختبارصوت
- 02تقطيع المصفوفات باستخدام الفهارستحدياختبارصوت
- 03معاملات المصفوفاتتحدياختبارصوت
- 04دالة Include?تحدياختبارصوت
Hashes
6 درسًا644- 01إنشاء الـ Hashesتحدياختبارصوت
- 02الوصول إلى عناصر الـ Hashتحدياختبارصوت
- 03تعديل الـ Hashesتحدياختبارصوت
- 04دوال الـ Hashتحدياختبارصوت
- 05مراجعة - Hash المنتجتحدي
- 06الـ Symbols كمفاتيح للـ Hashتحدياختبارصوت
متتبع المصاريف اليومية
مشروع7 درسًا1- 01نظرة عامة على المشروعتحدي
- 02الخروج من البرنامجمشروع
- 03إضافة مصروفمشروع
- 04عرض جميع المصاريفمشروع
- 05المجموع والمتوسطمشروع
- 06مسح الكلمشروع
- 07معالجة الأخطاءمشروع
التحديات النهائية
3 درسًا3- 01هرم النجوم المسطحتحدي
- 02مكتشف الأنماطتحدي
- 03ماذا تشتريتحدي
قسم 2
المنطق وتدفق العمليات
ابدأ القسمابدأتوسيعطيطوّر مهارات حل المشكلات في Ruby باستخدام strings، وblocks، وenumerable methods، والبيانات المتداخلة، ومعالجة الأخطاء.السلاسل النصية بعمق
5 درسًا534- 01نظرة عامة على دوال السلاسل النصيةتحدياختبار
- 02تضمين النصوص (String Interpolation)تحدياختبار
- 03التكرار عبر السلاسل النصيةتحدياختبار
- 04التقسيم والربط (Split و Join)تحدياختبار
- 05مراجعة - نساج النصوصتحدي
النطاقات
4 درسًا425- 01ما هو النطاق؟تحدياختبار
- 02دوال النطاقتحدياختبار
- 03النطاقات في Case / Whenتحدياختبار
- 04مراجعة - تمارين على النطاقاتتحدي
المصفوفات ثنائية الأبعاد
5 درسًا534- 01أساسيات المصفوفات ثنائية الأبعادتحدياختبار
- 02الوصول إلى عناصر المصفوفات ثنائية الأبعادتحدياختبار
- 03التكرار عبر المصفوفات ثنائية الأبعادتحدياختبار
- 04الأنماط الشائعة في المصفوفات ثنائية الأبعادتحدياختبار
- 05مراجعة - عمليات المصفوفاتتحدي
Blocks و Procs و Lambdas
6 درسًا641- 01ما هو الـ Block؟تحدياختبار
- 02do..end مقابل الأقواس { }تحدياختبار
- 03الكلمة المفتاحية yieldتحدياختبار
- 04معاملات الـ Blockتحدياختبار
- 05Procs و Lambdasتحدياختبار
- 06مراجعة - Custom Iterator مخصصتحدي
قوة الـ Enumerable
7 درسًا752- 01Select و Rejectتحدياختبار
- 02تسلسل Mapتحدياختبار
- 03Reduce / Injectتحدياختبار
- 04count، all?، any?، none?تحدياختبار
- 05group_by و partitionتحدياختبار
- 06sort_by، min_by، max_byتحدياختبار
- 07مراجعة - Data Pipelineتحدي
مشروع - مدير المكتبة
مشروع5 درسًا139- 01نظرة عامة على المشروعتحدياختبار
- 02إضافة كتابمشروعاختبار
- 03البحث بالعنوانمشروعاختبار
- 04التصفية حسب النوعمشروعاختبار
- 05تحديد كمقروءمشروعاختبار
Hashes - الجزء الثاني
5 درسًا535- 01Hash.new مع القيم الافتراضيةتحدياختبار
- 02التكرار عبر الـ Hashesتحدياختبار
- 03الـ Hashes المتداخلةتحدياختبار
- 04الدمج والتحويلتحدياختبار
- 05مراجعة - عداد التكرارتحدي
اتخاذ القرار المتقدم
5 درسًا535- 01Case مع Classes و Regexتحدياختبار
- 02when متعددة القيمتحدياختبار
- 03المعامل الثلاثي (Ternary Operator)تحدياختبار
- 04Inline if / unlessتحدياختبار
- 05مراجعة - مصنف الدرجاتتحدي
معالجة الأخطاء
5 درسًا534- 01ما هو الاستثناء؟تحدياختبار
- 02begin / rescueتحدياختبار
- 03جمل rescue متعددةتحدياختبار
- 04ensure و raiseتحدياختبار
- 05ملخص - آلة حاسبة آمنةتحدي
مشروع - سجلات الطلاب
مشروع6 درسًا146- 01نظرة عامة على المشروعتحدياختبار
- 02إضافة طالبمشروعاختبار
- 03إضافة درجةمشروعاختبار
- 04متوسط الدرجاتمشروعاختبار
- 05قائمة حسب المادةمشروعاختبار
- 06الطلاب المتفوقونمشروعاختبار
التحديات النهائية
3 درسًا322- 01تحليل الكلماتتحدياختبار
- 02لقطة المخزونتحدياختبار
- 03محول البياناتتحدياختبار
لماذا تتعلم Ruby مع Coddy
- شغّل كود Ruby حقيقي في متصفحك. لا حاجة لتثبيت Ruby ولا لإعداد rbenv أو RVM. كل درس يشغّل سكربت Ruby الخاص بك على الخادم ويعرض الناتج فورًا.
- Ruby بأسلوبها الاصطلاحي: المتغيرات، التحكم في التدفق، الدوال، blocks وprocs، الفئات، الوحدات، mixins، معالجة الاستثناءات، والمكتبة القياسية. أساسيات Ruby التي يحتاجها كل مطوّر Rails.
- تساعدك تلميحات الذكاء الاصطناعي على قراءة أخطاء Ruby وإصلاحها دون إفساد الحل، فيبدو أسلوب اللغة المرن والتعبيري طبيعيًا بدلًا من أن يكون مربكًا.
- شهادة مجانية في برمجة Ruby عند إتمامك الدورة. إشارة موثوقة لوظائف Ruby on Rails والـ backend والـ full-stack حيث يُعدّ إتقان Ruby المتطلب الأساسي.
أسئلة شائعة حول تعلّم Ruby
هل Ruby سهل التعلم؟
Ruby من أكثر لغات البرمجة ملاءمةً للمبتدئين. صياغتها معروفة بسهولة قراءتها، فهي أقرب إلى الإنجليزية، واللغة صُمِّمت أصلًا لتُسعد المطوّر. معظم المبتدئين يكتبون أول برنامج Ruby فعلي خلال الساعة الأولى، ويصلون إلى blocks والكلاسات في غضون أسبوعين.
فيمَ تُستخدم لغة Ruby؟
تشتهر Ruby بكونها اللغة وراء Ruby on Rails، إطار العمل الذي يُشغّل GitHub وShopify وAirbnb والعديد من التطبيقات الكبيرة الأخرى. وخارج Rails، تُستخدم Ruby على نطاق واسع في كتابة scripts والأتمتة وأدوات DevOps وأدوات سطر الأوامر الصغيرة. ومعظم من يتعلمون Ruby اليوم يستهدفون Rails أو تطوير الويب full-stack.
هل أتعلّم Ruby أم Python أولاً؟
اختر بناءً على هدفك. Python هو الخيار الأوسع والأكثر شيوعًا — قوي في مجالات البيانات والـ scripting والذكاء الاصطناعي. أما Ruby فهو الخيار الأكثر تخصصًا إذا كنت تستهدف Rails أو شركات الويب الناشئة أو وظائف الـ backend في الشركات التي تستخدم Ruby. الأساسيات تنتقل في كلا الاتجاهين، لذا لا أحد منهما يُعدّ استثمارًا ضائعًا.
كم من الوقت يستغرق تعلم Ruby؟
أساسيات Ruby — المتغيرات، الجمل الشرطية، الحلقات، والدوال — تحتاج من أسبوع إلى أسبوعين من الممارسة اليومية. أما الإلمام بـ blocks والكلاسات والـ modules وأسلوب Ruby الاصطلاحي فيستغرق عادةً من شهر إلى ثلاثة أشهر. وبعد ذلك، يأتي تعلّم Ruby on Rails كمرحلة منفصلة فوق اللغة نفسها.
هل يمكنني تعلّم Ruby عبر الإنترنت مجانًا؟
نعم. دورة Ruby التفاعلية مجانية — دروس كاملة وتمارين برمجية واختبارات وشهادة. يعمل Ruby على الخادم في بيئة معزولة (sandboxed)، لذا لست بحاجة إلى تثبيت Ruby أو إعداد rbenv محلياً لتبدأ البرمجة.
هل أحصل على شهادة بعد إنهاء دورة Ruby؟
نعم. عند إكمالك دورة Ruby تحصل على شهادة إتمام مجانية. إشارة قابلة للتحقق يمكنك إضافتها إلى سيرتك الذاتية أو مشاركتها على LinkedIn، ومفيدة بشكل خاص كنقطة انطلاق نحو وظائف Ruby on Rails أو مطوّر backend.