رحلة
تعلّم Dart
ابدأ بتعلّم Dart من الصفر من خلال دورة أونلاين مجانية وتفاعلية. أتقن المتغيرات والشروط والحلقات والدوال وهياكل البيانات وتنظيم المشاريع عبر تمارين عملية ومشاريع حقيقية وتلميحات بالذكاء الاصطناعي وشهادة عند الإكمال.
16,844+ من الـ codders مسجلون
تتضمن هذه الرحلة
مساعدة برمجية بالذكاء الاصطناعي
دروس تفاعلية عملية
تعليق صوتي في كل درس
اختبارات لقياس معرفتك
شهادة إتمام مجانية
المنهج
3 أقسام269 درسًا240 تحديات1,689 أسئلة الاختبار01قسم 1
Fundamentals
Build a strong foundation with essential concepts and basic skillsابدأ التعلممقدمة إلى Dart
4 درسًا224- 01ما هي Dart؟تحدي
- 02الدالة mainاختبارصوت
- 03طباعة المخرجاتتحدياختبارصوت
- 04التعليقات البرمجيةاختبارصوت
المتغيرات وأنواع البيانات الأساسية
11 درسًا1075- 01ما هي المتغيرات؟اختبارصوت
- 02النصوص (Strings)تحدياختبارصوت
- 03الأعداد الصحيحة (int)تحدياختبارصوت
- 04الأعداد العشرية (double)تحدياختبارصوت
- 05القيم المنطقية (bool)تحدياختبارصوت
- 06استنتاج النوع باستخدام 'var'تحدياختبارصوت
- 07المتغيرات النهائية (Final)تحدياختبارصوت
- 08المتغيرات الثابتة (Constant)تحدياختبارصوت
- 09قواعد التسميةتحدياختبارصوت
- 10أساسيات الـ Null Safetyتحدياختبارصوت
- 11ملخص - التصريح عن المتغيراتتحدي
المعاملات - الجزء الأول
6 درسًا638- 01المعاملات الحسابيةتحدياختبارصوت
- 02القسمة الصحيحةتحدياختبارصوت
- 03معامل باقي القسمة (Modulo)تحدياختبارصوت
- 04الزيادة والنقصانتحدياختبارصوت
- 05اختصارات التعيينتحدياختبارصوت
- 06ملخص - الحسابات البسيطةتحدي
المعاملات - الجزء الثاني
6 درسًا636- 01معاملات المقارنةتحدياختبارصوت
- 02المعامل المنطقي ANDتحدياختبارصوت
- 03المعامل المنطقي ORتحدياختبارصوت
- 04المعامل المنطقي NOTتحدياختبارصوت
- 05معاملات فحص النوعتحدياختبارصوت
- 06ملخص - إجراء المقارناتتحدي
المعاملات - الجزء الثالث
3 درسًا320- 01معامل التعامل مع Nullتحدياختبارصوت
- 02الوصول المتفادي لـ Nullتحدياختبارصوت
- 03المعامل الشرطيتحدياختبارصوت
تدفق التحكم - اتخاذ القرار
6 درسًا636- 01جملة 'if'تحدياختبارصوت
- 02جملة 'else'تحدياختبارصوت
- 03جملة 'else if'تحدياختبارصوت
- 04ملخص - القرارات البسيطةتحدي
- 05جمل 'if' المتداخلةتحدياختبارصوت
- 06جملة 'switch'تحدياختبارصوت
التعامل مع النصوص (Strings)
5 درسًا538- 01دمج النصوص (String Concatenation)تحدياختبارصوت
- 02تضمين النصوص (String Interpolation)تحدياختبارصوت
- 03النصوص متعددة الأسطر (Multi-line Strings)تحدياختبارصوت
- 04خصائص النصوص (String Properties)تحدياختبارصوت
- 05دوال النصوص الأساسية (String Methods)تحدياختبارصوت
مسار التحكم - الحلقات التكرارية
6 درسًا637- 01حلقة 'for' التكراريةتحدياختبارصوت
- 02حلقة 'while' التكراريةتحدياختبارصوت
- 03حلقة 'do-while' التكراريةتحدياختبارصوت
- 04استخدام 'break' في الحلقات التكراريةتحدياختبارصوت
- 05استخدام 'continue' في الحلقات التكراريةتحدياختبارصوت
- 06ملخص - تكرار الكود البرمجيتحدي
المجموعات - أساسيات القوائم
8 درسًا759- 01ما هي القوائم؟اختبارصوت
- 02إنشاء قائمةتحدياختبارصوت
- 03الوصول عبر الفهرستحدياختبارصوت
- 04الحصول على طول القائمةتحدياختبارصوت
- 05إضافة عناصرتحدياختبارصوت
- 06إزالة عناصرتحدياختبارصوت
- 07التحقق مما إذا كانت القائمة فارغةتحدياختبارصوت
- 08التكرار عبر القائمةتحدياختبارصوت
المجموعات - أساسيات الخرائط
8 درسًا757- 01ما هي الخرائط؟اختبارصوت
- 02إنشاء خريطةتحدياختبارصوت
- 03الوصول إلى القيم عبر المفتاحتحدياختبارصوت
- 04أزواج المفتاح والقيمةتحدياختبارصوت
- 05الحصول على حجم الخريطةتحدياختبارصوت
- 06الحصول على المفاتيحتحدياختبارصوت
- 07الحصول على القيمتحدياختبارصوت
- 08التحقق من وجود مفتاحتحدياختبارصوت
أساسيات الدوال
8 درسًا753- 01ما هي الدوال؟اختبارصوت
- 02تعريف دالة بسيطةتحدياختبارصوت
- 03استدعاء الدالةتحدياختبارصوت
- 04الدوال مع المعاملات (Parameters)تحدياختبارصوت
- 05الدوال التي تعيد قيمًاتحدياختبارصوت
- 06الكلمة المفتاحية 'void'تحدياختبارصوت
- 07صيغة السهم (Arrow Syntax)تحدياختبارصوت
- 08ملخص - الدوال البسيطةتحدي
الدوال المتقدمة
5 درسًا532- 01المعاملات الموضعية الاختياريةتحدياختبارصوت
- 02المعاملات المسماةتحدياختبارصوت
- 03المعاملات المسماة المطلوبةتحدياختبارصوت
- 04القيم الافتراضية للمعاملاتتحدياختبارصوت
- 05ملخص - معاملات الدوالتحدي
أمان الـ Null بشكل متعمق
6 درسًا639- 01فهم الـ Nullتحدياختبارصوت
- 02الأنواع القابلة لقيمة Nullتحدياختبارصوت
- 03الأنواع غير القابلة لقيمة Nullتحدياختبارصوت
- 04عامل التأكيد على الـ Nullتحدياختبارصوت
- 05التهيئة المتأخرةتحدياختبارصوت
- 06ملخص - التعامل مع الـ Null بأمانتحدي
تحويل الأنواع
4 درسًا430- 01تحويل String إلى intتحدياختبارصوت
- 02تحويل String إلى doubleتحدياختبارصوت
- 03تحويل الأرقام إلى Stringتحدياختبارصوت
- 04معالجة أخطاء التحويلتحدياختبارصوت
مشروع: آلة حاسبة بسيطة
مشروع5 درسًا1- 01الإعدادتحدي
- 02تعريف الأرقاممشروع
- 03إنشاء عمليةمشروع
- 04إجراء الحسابمشروع
- 05عرض النتيجةمشروع
تحديات الأساسيات
3 درسًا3- 01تحدي: قائمة الحساباتتحدي
- 02تحدي: مجموع الأرقامتحدي
- 03تحدي: إيجاد حاصل الضربتحدي
02قسم 2
Logic & Flow
Master advanced Dart programming with a focus on data structures and flow control. Learn to work with complex arrays, collections, error handling, and time management.ابدأ التعلمالتعامل المتقدم مع القوائم
9 درسًا959- 01خصائص القائمة: first و lastتحدياختبار
- 02حالة القائمة: isEmpty و isNotEmptyتحدياختبار
- 03عكس القائمةتحدياختبار
- 04الإضافة إلى القائمة: insertتحدياختبار
- 05الحذف من القائمة: removeWhereتحدياختبار
- 06البحث في القائمة: indexOfتحدياختبار
- 07فرز القائمةتحدياختبار
- 08خلط القائمةتحدياختبار
- 09ملخص - منظم القوائمتحدي
عمليات القوائم الوظيفية
7 درسًا746- 01التحويل باستخدام 'map'تحدياختبار
- 02التصفية باستخدام 'where'تحدياختبار
- 03استخدام '.toList()'تحدياختبار
- 04التحقق من الشروط باستخدام 'any'تحدياختبار
- 05الشروط باستخدام 'every'تحدياختبار
- 06البحث باستخدام 'firstWhere'تحدياختبار
- 07مراجعة - تصفية البياناتتحدي
المجموعات
9 درسًا864- 01ما هي المجموعة؟اختبار
- 02إنشاء مجموعةتحدياختبار
- 03الإضافة والحذف من المجموعاتتحدياختبار
- 04التحقق من وجود عناصر في المجموعةتحدياختبار
- 05تحويل قائمة إلى مجموعةتحدياختبار
- 06اتحاد المجموعاتتحدياختبار
- 07تقاطع المجموعاتتحدياختبار
- 08الفرق بين المجموعاتتحدياختبار
- 09مراجعة - قائمة ضيوف فريدةتحدي
معالجة الـ Map المتقدمة
7 درسًا745- 01التكرار عبر الـ Mapتحدياختبار
- 02التحقق من المفاتيح والقيمتحدياختبار
- 03خصائص الـ Map: keys و valuesتحدياختبار
- 04إضافة مشروطة: putIfAbsentتحدياختبار
- 05إزالة العناصر من الـ Mapتحدياختبار
- 06الـ Maps المتداخلةتحدياختبار
- 07مراجعة - تحديث المخزونتحدي
مشروع: حاسبة عربة التسوق
مشروع5 درسًا1- 01إعداد المشروعتحدي
- 02إضافة العناصر إلى العربةمشروع
- 03حساب التكلفة الإجماليةمشروع
- 04تطبيق خصممشروع
- 05عرض الإيصال النهائيمشروع
أساسيات معالجة الأخطاء
6 درسًا541- 01ما هي الاستثناءات؟اختبار
- 02كتلة 'try-catch'تحدياختبار
- 03التقاط الاستثناءات باستخدام 'on'تحدياختبار
- 04كتلة 'finally'تحدياختبار
- 05رمي استثناءتحدياختبار
- 06ملخص - القسمة الآمنةتحدي
الدوال المتقدمة
7 درسًا646- 01الدوال المجهولةتحدياختبار
- 02تمرير الدوال كوسطاءتحدياختبار
- 03فهم الـ Closuresتحدياختبار
- 04مقدمة في الاستدعاء الذاتياختبار
- 05دالة الاستدعاء الذاتي: العد التنازليتحدياختبار
- 06دالة الاستدعاء الذاتي: العامليتحدياختبار
- 07مراجعة - معالج القوائمتحدي
مشروع: محلل نصوص بسيط
مشروع7 درسًا18- 01نظرة عامة على المشروع وإعدادهتحدياختبار
- 02عد الأحرفمشروع
- 03تقسيم النص إلى كلماتمشروع
- 04عد الكلماتمشروع
- 05عد الكلمات الفريدةمشروع
- 06عداد تكرار الكلماتمشروع
- 07عرض التحليلمشروع
التعدادات (Enums)
5 درسًا433- 01ما هي الـ Enums؟اختبار
- 02تعريف Enum بسيطتحدياختبار
- 03استخدام الـ Enums في المتغيراتتحدياختبار
- 04الـ Enums في جمل 'switch'تحدياختبار
- 05مراجعة - إشارة المرورتحدي
التحديات النهائية
3 درسًا3- 01تحدي: فرز الدرجاتتحدي
- 02تحدي: عداد حروف العلةتحدي
- 03تحدي: FizzBuzzتحدي
03قسم 3
Object Oriented Programming
Discover how to organize code with classes, objects, and reusable structuresابدأ التعلمأساسيات الـ OOP
9 درسًا971- 01الملفات الخارجيةتحدياختبار
- 02المكتبات والـ Importsتحدياختبار
- 03مقدمة في الـ OOPتحدياختبار
- 04الـ Classes مقابل الـ Objectsتحدياختبار
- 05الكلمة المفتاحية thisتحدياختبار
- 06الـ Methodsتحدياختبار
- 07متغيرات الـ Instanceتحدياختبار
- 08أساسيات الـ Constructorتحدياختبار
- 09مراجعة - آلة حاسبة بسيطةتحدي
المنشئات في Dart
7 درسًا753- 01المنشئ الافتراضيتحدياختبار
- 02المنشئات المسماةتحدياختبار
- 03قوائم التهيئةتحدياختبار
- 04المنشئات الثابتةتحدياختبار
- 05المنشئات المصنعيةتحدياختبار
- 06المنشئات الموجهةتحدياختبار
- 07ملخص - بناء الأشكالتحدي
خصائص الـ Class
6 درسًا644- 01أعضاء الـ Instance مقابل الـ Staticتحدياختبار
- 02حقول Final و Constتحدياختبار
- 03متغيرات Lateتحدياختبار
- 04الـ Static Methods والحقولتحدياختبار
- 05دوال الـ Getters والـ Settersتحدياختبار
- 06مراجعة - مدير الحساب البنكيتحدي
أمان الـ Null
7 درسًا754- 01مقدمة في أمان الـ Nullتحدياختبار
- 02Nullable مقابل Non-Nullableتحدياختبار
- 03عاملا الـ ? و !تحدياختبار
- 04الكلمة المفتاحية Late وأمان الـ Nullتحدياختبار
- 05العوامل المدركة للـ Nullتحدياختبار
- 06أمان الـ Null في الـ Classesتحدياختبار
- 07مراجعة - نظام ملف تعريف المستخدمتحدي
التغليف (Encapsulation)
6 درسًا641- 01الأعضاء العامة مقابل الخاصةتحدياختبار
- 02اتفاقية البادئة _تحدياختبار
- 03الخصوصية على مستوى المكتبةتحدياختبار
- 04تعمق في Getters و Settersتحدياختبار
- 05إخفاء المعلوماتتحدياختبار
- 06مراجعة - سجلات الطلابتحدي
الوراثة
7 درسًا750- 01أساسيات الوراثةتحدياختبار
- 02الكلمة المفتاحية superتحدياختبار
- 03إعادة تعريف الدوال (Method Overriding)تحدياختبار
- 04الوسم @overrideتحدياختبار
- 05الكلمة المفتاحية final Classتحدياختبار
- 06الدوال البانية والوراثةتحدياختبار
- 07مراجعة - هيكلية الموظفينتحدي
الفئات المجردة والواجهات
7 درسًا753- 01الفئات المجردةتحدياختبار
- 02الدوال المجردةتحدياختبار
- 03الواجهات في Dartتحدياختبار
- 04الواجهات الضمنيةتحدياختبار
- 05التنفيذ مقابل التوسيعتحدياختبار
- 06الواجهات المتعددةتحدياختبار
- 07مراجعة - حاسبة الأشكالتحدي
Mixins
7 درسًا752- 01مقدمة إلى Mixinsتحدياختبار
- 02إنشاء Mixinsتحدياختبار
- 03استخدام Mixins متعددةتحدياختبار
- 04الكلمة المفتاحية on في Mixinsتحدياختبار
- 05Mixin مقابل الوراثة (Inheritance)تحدياختبار
- 06Mixin مقابل الواجهة (Interface)تحدياختبار
- 07مراجعة - نظام الحيوانات (Animal System)تحدي
تعدد الأشكال
6 درسًا643- 01أساسيات تعدد الأشكالتحدياختبار
- 02تعدد الأشكال عبر الـ Interfacesتحدياختبار
- 03التحقق من النوع أثناء التشغيلتحدياختبار
- 04المعاملات is و asتحدياختبار
- 05الكلمة المفتاحية Covariantتحدياختبار
- 06ملخص - معالج الدفعتحدي
المجموعات والأنماط العامة
7 درسًا754- 01نظرة عامة على List و Set و Mapتحدياختبار
- 02المجموعات آمنة النوعتحدياختبار
- 03الفئات العامةتحدياختبار
- 04الدوال العامةتحدياختبار
- 05قيود الأنماط العامةتحدياختبار
- 06Iterable و Iteratorتحدياختبار
- 07ملخص - التخزين العامتحدي
الدوال الخاصة
6 درسًا643- 01إعادة تعريف toString()تحدياختبار
- 02إعادة تعريف hashCode و ==تحدياختبار
- 03واجهة Comparableتحدياختبار
- 04دالة call()تحدياختبار
- 05إعادة تعريف noSuchMethodتحدياختبار
- 06مراجعة - Custom Collectionتحدي
البرمجة الكائنية غير المتزامنة (Async OOP)
6 درسًا645- 01Futures و async/awaitتحدياختبار
- 02أساسيات الـ Streamsتحدياختبار
- 03متحكمات الـ Streamsتحدياختبار
- 04الـ Constructors غير المتزامنةتحدياختبار
- 05العمليات غير المتزامنة في دوال الكلاستحدياختبار
- 06مراجعة - جالب البيانات (Data Fetcher)تحدي
مفاهيم OOP المتقدمة
7 درسًا764- 01التركيب مقابل الوراثة (Composition vs Inheritance)تحدياختبار
- 02دوال التوسعة (Extension Methods)تحدياختبار
- 03الأصناف القابلة للاستدعاء (Callable Classes)تحدياختبار
- 04الأصناف المختومة (Sealed Classes - Dart 3)تحدياختبار
- 05السجلات (Records - Dart 3)تحدياختبار
- 06الأنماط والمطابقة (Patterns & Matching - 3.0)تحدياختبار
- 07التعدادات مع الدوال (Enums with Methods)تحدياختبار
أنماط التصميم - الجزء الأول
5 درسًا543- 01مقدمة في أنماط التصميمتحدياختبار
- 02نمط Singletonتحدياختبار
- 03نمط Factoryتحدياختبار
- 04نمط Observerتحدياختبار
- 05نمط Strategyتحدياختبار
أنماط التصميم - الجزء الثاني
7 درسًا763- 01نمط الأمرتحدياختبار
- 02نمط المحولتحدياختبار
- 03نمط المزينتحدياختبار
- 04نمط طريقة القالبتحدياختبار
- 05نمط الحالةتحدياختبار
- 06نمط التركيبتحدياختبار
- 07نمط المستودعتحدياختبار
مشروع: إدارة المكتبة
مشروع6 درسًا1- 01نظرة عامة على المشروعتحدي
- 02فئات الكتاب والمستخدممشروع
- 03نظام الاستعارةمشروع
- 04خاصية البحثمشروع
- 05واجهة المسؤولمشروع
- 06الاختبار والتكاملمشروع
التحديات النهائية
4 درسًا4- 01منصة التعليم الإلكترونيتحدي
- 02نظام مصرفيتحدي
- 03نظام شخصيات الألعابتحدي
- 04خدمة تأجير المركباتتحدي
لماذا تتعلم Dart مع Coddy
- دورة Dart مجانية أونلاين: لا تثبيت ولا إعداد أدوات ولا عوائق للبدء. افتح المتصفح وابدأ التدريب من الدرس الأول.
- دروس Dart العملية تتجاوز الشرح النظري: كل مفهوم يرتبط بتمرين تكتب فيه كودًا حقيقيًا وتتعلم بالممارسة.
- تلميحات الذكاء الاصطناعي تساعدك عندما تتوقف في تمرين Dart، فتوضح الخطوة التالية من دون إعطاء الحل كاملًا.
- شهادة إتمام مجانية لدورة Dart يمكنك مشاركتها على LinkedIn أو إضافتها إلى سيرتك الذاتية.
أسئلة شائعة حول تعلّم Dart
هل Dart سهل التعلم؟
نعم، يمكنك البدء في Dart حتى لو لم تكن لديك خبرة سابقة. يقسّم Coddy المفاهيم إلى تمارين قصيرة لتفهم الصياغة وتتدرب على المتغيرات والشروط والحلقات والدوال وهياكل البيانات وتنظيم المشاريع وتبني ثقتك تدريجيًا.
كم يستغرق تعلّم Dart؟
يمكن تعلّم أساسيات Dart عادة خلال أسبوع أو أسبوعين من التدريب اليومي. ولإنشاء مشاريع حقيقية بثقة، خصص من شهر إلى ثلاثة أشهر حسب سرعتك وخبرتك السابقة.
أين يمكنني تعلّم Dart أونلاين مجانًا؟
يوفر Coddy دورة Dart مجانية أونلاين تشمل دروسًا وتحديات برمجية واختبارات ومشاريع. لا تحتاج إلى تثبيت أي شيء؛ كل شيء يعمل داخل المتصفح.
كيف أتعلم Dart بسرعة؟
أسرع طريقة هي التدريب اليومي. في Coddy تنتقل من شرح قصير إلى تمرين مباشر مع تلميحات ذكاء اصطناعي، فتقضي وقتك في كتابة Dart بدل مشاهدة فيديوهات طويلة فقط.
هل أحصل على شهادة Dart عند الانتهاء؟
نعم. عند إكمال دورة Dart على Coddy تحصل على شهادة إتمام مجانية يمكنك مشاركتها على LinkedIn أو إضافتها إلى سيرتك الذاتية.
ماذا يمكنني بناءه بعد تعلّم Dart؟
بعد الدورة ستتمكن من إنشاء سكربتات مفيدة وتطبيقات صغيرة وأتمتة وألعاب بسيطة ومشاريع تضيفها إلى معرض أعمالك. وستمتلك أيضًا أساسًا قويًا للانتقال إلى موضوعات أكثر تقدمًا.