قمت بتطوير تطبيق City Locator باستخدام Android (Kotlin) مع تطبيق Clean Architecture، بهدف مساعدة المستخدمين في استكشاف المدن والبحث عنها بسهولة مع دعم عرضها على خرائط Google.
● المراحل وخطوات التنفيذ:
- إعداد البيانات: الاعتماد على ملف JSON محلي يحتوي على بيانات المدن (الاسم، الدولة، الإحداثيات، والمعرف الفريد).
- تحليل البيانات: استخدام مكتبة Gson لتحويل بيانات JSON إلى كائنات بيانات في Kotlin.
- تصميم واجهة المستخدم: عبر Jetpack Compose لبناء شاشات حديثة وبسيطة.
- إدارة البيانات: باستخدام ViewModel لضمان فصل البيانات عن الواجهة وإدارتها بشكل واعٍ لدورة الحياة.
- تنفيذ البحث: تطبيق خوارزمية البحث الثنائي (Binary Search) للحصول على نتائج دقيقة وسريعة.
- التكامل مع خرائط Google: عند الضغط على أي مدينة يمكن فتح موقعها مباشرة على خرائط Google لعرضها جغرافيًا.
- تجربة المستخدم: اختبار التطبيق لضمان سرعة الاستجابة وسهولة التنقل بين الشاشات.
● المميزات الرئيسية:
- تحميل بيانات المدن من ملف JSON محلي للعمل دون إنترنت.
- البحث عن المدن بدقة عالية باستخدام Binary Search.
- عرض معلومات المدينة (الاسم، الدولة، والإحداثيات).
- فتح موقع المدينة مباشرة في خرائط Google.
● التقنيات المستخدمة:
Kotlin: لغة البرمجة.
Jetpack Compose: لإنشاء واجهات المستخدم.
ViewModel: لإدارة البيانات بشكل مرن.
Clean Architecture: لتنظيم الكود وفصل المسؤوليات.
Gson: لتحليل بيانات JSON.
Binary Search: لتحسين سرعة البحث.