Personal
MVI
Clean Architecture
موسوعة النباتات
دليل رقمي شامل لجميع شخصيات 'Plants vs. Zombies 2'.
نظرة عامة
دليل شامل لجميع النباتات والزومبي في لعبة "Plants vs. Zombies 2"، مدعوم بواجهة برمجة التطبيقات (PVZ 2 API). تم بناء التطبيق أساساً باستخدام المعمارية النظيفة (Clean Architecture) في تطوير أندرويد، باتباع نمط (MVI - Model-View-Intent).
القرارات المعمارية والتقنية
يتبع تطبيق PlantPedia Z معمارية متعددة الوحدات (Modular Architecture) لتحسين أوقات البناء، والحفاظ على فصل الاهتمامات (Separation of Concerns)، وجعل الكود البرمجي أكثر قابلية للتوسع والصيانة. يعتمد التطبيق على نمط MVI (Model-View-Intent) جنباً إلى جنب مع مبادئ المعمارية النظيفة (Clean Architecture).
التصميم الهيكلي للوحدات
- التطبيق والنواة (App & Core): التنظيم المركزي للوظائف والأدوات المشتركة.
- البيانات وقواعد البيانات (Data & Database): مصادر البيانات، التخزين المؤقت المحلي باستخدام Room، والتكامل المباشر مع واجهات برمجة التطبيقات (API).
- النطاق (Domain): منطق الأعمال النقي (Business Logic) وحالات الاستخدام (Use Cases) بلغة Kotlin.
- العرض وواجهة المستخدم (Presentation & UI): مكونات Jetpack Compose المشتركة وأنظمة التصميم.
- وحدات الميزات (Feature Modules): ميزات معزولة بشكل أفقي مثل
encyclopediaالأساسية.
التقنيات المستخدمة
Language
Kotlin
UI Framework
Jetpack Compose
Architecture
MVI / Repository
Networking
Retrofit & OkHttp3
Persistence
Room DB
DI Framework
Hilt
Cloud Services
Firebase