نظام إدارة محتوى المدونات (C# Blog System)
هذا المشروع هو تطبيق برمجاي مصمم لمحاكاة الأنظمة التفاعلية للمدونات ومنصات التواصل الاجتماعي. تم بناؤه باستخدام بيئة .NET Core، ويهدف إلى تنظيم العلاقة بين المستخدمين والمحتوى (المنشورات والتعليقات) بطريقة برمجية منظمة.
أهم الخصائص والتقنيات المستخدمة:
تطبيق مفاهيم الـ OOP:
التجريد (Abstraction): استخدام كلاس Content كفئة مجردة لتكون أساساً لكل أنواع المحتوى (Posts & Comments).
الوراثة (Inheritance): ترث كل من المنشورات والتعليقات الخصائص الأساسية من الكلاس الرئيسي.
تعدد الأشكال (Polymorphism): من خلال عمل override لدالة العرض display لكل نوع محتوى بشكل مختلف.
إدارة البيانات (Data Context):
يعتمد النظام على كلاس DataContext الذي يعمل كمخزن مركزي للبيانات (In-Memory Database) لإدارة قوائم المستخدمين، المنشورات، والتعليقات.
تطبيق مفهوم حقن التبعية (Dependency Injection) لضمان مرونة تمرير البيانات بين أجزاء النظام.
الخدمات والعمليات (Services):
يوفر كلاس PostServices منطق العمل (Business Logic)، مثل إنشاء المنشورات، إضافة التعليقات، وإدارة نظام الإعجابات (Likes).
التحقق من صحة البيانات (Validation):
يتضمن الكود شروطاً صارمة للتحقق من المدخلات، مثل التأكد من عدم فراغ النصوص وتحديد حد أقصى لطول التعليقات (500 حرف).
مكونات النظام:
المستخدم (User): إدارة هوية كاتب المحتوى.
المنشور (Post): المحتوى الأساسي الذي يدعم الإعجابات وقائمة من التعليقات.
التعليق (Comment): محتوى مرتبط بمنشور معين وكاتب محدد.
الخدمات (Services): المحرك الذي يربط المستخدم بالمحتوى وينفذ العمليات.