هذا المشروع عبارة عن نظام محاكاة لعمليات الدفع الإلكتروني (شبيه بأنظمة فوري أو المحافظ البنكية)، تم تطويره كـ Backend Service قوية وقابلة للتوسع. الهدف الرئيسي من المشروع لم يكن مجرد بناء النظام، بل تطبيق مفاهيم هندسة البرمجيات (Software Engineering) المتقدمة لضمان كود نظيف، آمن، وسهل الصيانة.
المميزات التقنية (Technical Highlights): ما يميز هذا المشروع هو البنية التحتية القوية للكود، حيث قمت بتطبيق:
مبادئ SOLID: لضمان فصل المسؤوليات وسهولة التعديل مستقبلاً.
أنماط التصميم (Design Patterns): تم استخدام أنماط مثل Strategy Pattern (لإدارة طرق الدفع المختلفة)، Observer Pattern (للإشعارات)، و Decorator Pattern (لإضافة الخصائص الإضافية).
Clean Architecture: تنظيم الكود بطريقة احترافية تسهل التوسع.
وظائف النظام (Features): يقدم النظام واجهة برمجة تطبيقات (API) تدعم العمليات التالية:
إدارة المستخدمين: تسجيل الدخول، إنشاء حسابات، وإدارة المحافظ الإلكترونية.
المعاملات المالية: الإيداع (Deposit)، السحب (Withdraw)، والتحويل بين المحافظ.
خدمات الدفع: دفع الفواتير (اتصالات، إنترنت، تبرعات) مع دعم شركات مزودة مختلفة.
نظام الاسترداد والخصومات: إدارة عمليات الـ Refund وتطبيق كوبونات الخصم بمرونة.
التقنيات المستخدمة (Tech Stack):
اللغة: Java.
الإطار: Spring Boot
تصميم النظام: OOP, UML Diagrams, Design Patterns.