OOP Factory Constructor In Dart

🏭 ما هو Factory Constructor؟ ✅ التعريف: Factory Constructor هو نوع خاص من الـ Constructor يُستخدم عندما تريد التحكم في إنشاء الكائن (object)، بدلًا من إنشائه مباشرة دائمًا. يعني:بدل ما new تنشئ كل مرة كائن جديد، تقدر تقول: “لا، إذا…

OOP mixin In dart

🔷 ما هو الـ Mixin؟ ✅ التعريف الرسمي: Mixin هو طريقة لإعادة استخدام كود في عدة كلاسات مختلفة بدون الحاجة للوراثة التقليدية (extends)، ويُستخدم عندما نريد دمج سلوك (behavior) في كلاس دون جعله جزءًا من سلسلة الوراثة. ✅ الشكل العام:…

OOP Interface – implements

✅ أولاً: ما هو الـ Interface؟ 📘 التعريف: interface هو عقد (contract) يحدد ما الذي يجب على الكلاس تنفيذه، لكنه لا يحتوي على أي منطق (body). في Dart، لا يوجد keyword خاصة بـ interface، وإنما كل class يمكن اعتباره interface…

OOP Abstract Class In dart

✅ أولًا: ما هو الـ Abstract Class؟ 🔹 التعريف: Abstract Class هو كلاس لا يمكن إنشاء كائن (object) منه مباشرة، يُستخدم كـ قالب (Template) لكلاسات أخرى ترث منه وتقوم بتنفيذ (تطبيق) ما يلزم من الدوال. 🔹 الهدف منه: ✅ الشكل…

OOP enum In Dart

✅ أولاً: ما هو enum؟ 📘 التعريف: enum (اختصار لـ enumeration) هو نوع بيانات مخصص يُستخدم لتعريف مجموعة من القيم الثابتة المحددة مسبقًا. بدلاً من استخدام نصوص أو أرقام لتمثيل حالات معينة، نستخدم enum لجعل الكود أكثر وضوحًا وتنظيمًا. ✅…

OOP Static Variable And Static Functions

✅ أولاً: تعريف المتغير الثابت static في لغة Dart، عند استخدام الكلمة المفتاحية static مع متغير داخل كلاس (class)، فهذا يعني أن هذا المتغير: ✅ الشكل العام للمتغير الثابت ✅ مثال بسيط وشرح مفصل: ✅ شرح المثال: ✅ الفوائد من…

Polymorphism In OOP In dart

🔰 ما هو Polymorphism؟ كلمة Polymorphism تعني “تعدد الأشكال”. هو أحد الركائز الأساسية في البرمجة الكائنية (OOP) إلى جانب: الهدف الأساسي: أن نستطيع استخدام نفس الدالة أو الخاصية بأشكال مختلفة حسب نوع الكائن. 🧠 الفكرة ببساطة: تخيل أن لديك دالة…

Inheritance In OOP In Dart

✅ ما هي الوراثة؟ الوراثة تعني أن كلاس (فئة) يمكن أن يرث خصائص ودوال من كلاس آخر. الوراثة تساعدك على إعادة استخدام الكود وتجنب التكرار. ✳️ أنواع الوراثة في Dart: النوع التعريف 1. Single Inheritance كلاس يرث من كلاس واحد…

Encapsulation In Opp In dart

🧬 Encapsulation (التغليف أو الاحتواء) في Dart هدفنا هنا: أن تتحكم في من يستطيع الوصول إلى بيانات الكائن، وكيف يمكنه استخدامها. ✅ أولاً: ما هو Encapsulation؟ Encapsulation يعني: 🔐 “إخفاء التفاصيل الداخلية للكائن وجعل الوصول إليها يتم بطريقة مُنظمة وآمنة،…

Constructor In OOP In Dart

🏗️ ما هو الـ Constructor؟ Constructor هو دالة خاصة داخل الكلاس تُنفذ تلقائيًا عند إنشاء كائن جديد (Object) من الكلاس، وتُستخدم بشكل أساسي لـ: الفائدة الشرح ✅ تهيئة الخصائص إعطاء قيم ابتدائية للخصائص عند إنشاء الكائن. ✅ تنفيذ تعليمات مبدئية…