فى الايام القليلة الماضية اطلقت تطبيق تعليم اللغة الالمانية باللغة العربية وانا هنا لن اتكلم عن مميزات التطبيق لمتعلمى اللغة الالمانية وانما سأتحدث عن تجربتى فى تعلم Flutter واطلاق التطبيق.
يمكنك تحميل التطبيق من متجر جوجل بلاي من هنا
يمكنك زيارة موقع التطبيق الرسمى من هنا
Flutter سهلة وممتعة
انا فى الاساس مطور ويب وتحمست اكثر من مرة لتعلم برمجة الاندرويد وبالفعل تعلمت جافا منذ فترة طويلة ولكنى لم اتحمس لانشاء تطبيقات بها قد يكون بسبب صعوبتها النسبية فى التعلم وبعد ذلك تعلمت Kotlin فى بداية طرحها ولكن ايضًا لم اكمل مسار التعليم الخاصة بها ولكن بالطبع استفيد الكثير من المفاهيم من اللغتين Java و Kotlin مثل مفاهيم OOP التى نفعتنى فيما بعد فى برمجة الاندرويد وبعد ذلك عملت على مشروع لتعليم اللغة الالمانية بواسطة مايمسى hybrid android apps وهى تقنية تستخدم تقنيات ولغات البرمجة فى الويب وتقوم بتحويلها إلى Web View ليعمل على الموبيل فى شكل تطبيق ولكن هذه الطريقة تحتوى على الكثير من القيود فى استخدام المميزات الاساسية للموبيل مثل الكاميرا والخدمات الاخرى ولكن فى المقابل فانت كمطور ويب لا تحتاج لتعلم اي تقنية اخرى واستخدمت فى هذه الطريقة PhoneGap وهو تقنية تقوم بتحويل ملفات HTML , CSS , JavaScript إلى Android APK , تراجعت شعبية هذة الطريقة فى الفترة الاخيرة بشكل كبير نظرًا لظهور حلول اخرى افضل وبسبب المشكلات التى تجلبها هذه الطريقة مثل القيود على خدمات الموبيل الاساسية كما ذكرنا.
بعد ذلك قررت ان اتعلم Flutter فالحقيقة لم اتابع الكثير من الدورات فقط كانت دروة واحدة مدتها طويلة وهو Flutter Crash Course على قناة Academind حتى انى لم اكمل الدورة لاخرها وتحمست كثيرًا لانشاء تطبيق اندوريد عن طريق Flutter وبدأت بالفعل فالعمل على تطبيق تعليم اللغة الالمانية, لانى فى الحقيقة مؤمن بان العبرة فى التطبيق العملى على ما تتعلمه وليس بالمحتوى النظرى فقط فكما يقول Alan Turing.
“Programming is a skill best acquired by practice and example rather than from books.”
وتعنى البرمجة مهارة من الافضل ان تكتسب بالممارسة والامثلة بدلًا من الكتب, وهذا يوضح لنا اهمية تعلم البرمجة من خلال التطبيق العملى.
ما يمكننى قوله عن Flutter انها سهلة الاستخدام والتعلم ولن اعدد مميزات Flutter لان ليس هذا المقصود من الموضوع ولكن اذا اردت معرفة المزيد عنها يمكنك متابعة المقال هنا.
فالحقيقة لم تواجهنى صعوبات كبيرة فى البدء فى الموضوع وكانت كلما واجهتنى مشكلة بدأت بالبحث عن حل لها ما لفت انتباهى هو وجود الكثير من الدروس تغطى معظم التساؤلات التى واجهتنى على موقع Medium والموقع للاسف محجوب فى مصر لاسباب غير معروفة وبالتالى اضطررت لاستخدام Proxy لتخطى الحجب.
Backend للتطبيق يعمل ب Laravel وهو الجزء الذى يوفر API ليمد التطبيق بالبيانات التى تظهر عليه مثل الكلمات والجمل والصوتيات والفيديوهات والتدريبات وغيرها من محتويات التطبيق فيتم التحكم بالمعلومات التى تظهر للمستخدم عن طريق تطبيق مبنى على Laravel.
رحلة اطلاق التطبيق على جوجل بلاي
واجهة صعوبة نسبيًا فى نشر التطبيق على جوجل بلاي نظرًا لاننى لم استخدمه من قبل , ففى البداية يطلب منك الكثير من المعلومات عن التطبيق وكلها للحقيقة معلومات اساسية لنشر التطبيق.
سيطلب منك صفحة لسياسة الخصوصية وسيطلب منك بعض المعلومات عن محتوى التطبيق واذا كان التطبيق يستخدم عن طرق التسجيل فيه سيطلب منك بيانات الدخول ليستطيع فريق جوجل مراجعته.
من الاشياء المزعجة فى هذا الامر هو طول فترة المراجعة والتى امتدت لاسبوعين وبعد ذلك جاء الرد بوجود مشكلة فى كلمة فى وصف التطبيق لم اعرف بالضبط ماهى المشكلة فى الكلمة ولكنى على اي حال حذفته وقمت بالتقديم للمراجعة مرة اخرى لتأخد المراجعة اسبوعين اخريين 🙂
فى المجمل كانت الرحلة جميلة وممتعة وتعلمت الكثير منها , ونستمر بالتعلم كل يوم …
وفى النهاية اشكرك على وصولك لنهاية المقال واذا كان عندك اي تسؤلات لاتردد فى طرحها فى التعليقات.
اذا اردت تجربة التطبيق سأكون سعيد بمشاركتى بالملاحظات والاقتراحات لتحسين التطبيق.