ما هي Flutter ؟

ما هي Flutter ؟

يواجه مطورون تطبيقات الهواتف مشكلة, وهي ان تطبيقاتهم تعمل فقط على نظام الأندرويد أو الأيفون لأنهم يقومون ببرمجتها من خلال لغة خاصة بالنظام على سبيل المثال, جميع تطبيقات الأندرويد تتم برمجتها بلغة الجافا JAVA, وتطبيقات الأيفون تتم برمجتها بلغة السويفت Swift, وأنا شخصيا كنت أواجه هذه المشكلة لأنني كنت أعمل فقط على لغة الجافا ولهذا كنت أقوم بتصميم تطبيقات الأندرويد فقط, حتى جاءت Flutter.

ما هي Flutter ؟

Flutter هي Framework للتصميم وتطوير تطبيقات الهاتف, تعمل على الأندرويد و الأيفون, مصممة من طرف جوجل و تم إطلاق أول نسخة منها في أواخر سنة 2018. و تم تصميمها بلغة C++, مما يجعلها قوية وتتميز بأداء ممتاز على جميع الأنظمة الأساسية.

Flutter لديها مكتبات كثيرة للعناصر واجهة المستخدم (UI), التي تساعدنا في عمل تطبيق احترافي بأسطر قليلة وفي مدة زمنية قصيرة, وأيضا هي مناسبة لتطوير تطبيقات الويب التقليدية التي تعمل على المتصفحات ك Firefox و Chrome, وتأخد التطبيقات التي تم تطويرها باستخدام Flutter مظهر التطبيقات النموذجية وتتصرف أيضًا بشكل مشابه.

ما هي اللغة البرمجة الخاصة ب Flutter ؟

تعتمد مكتبات Flutter على لغة برمجة Dart التي طورتها جوجل وخصوصا فريق متصفح Chrome, فهي تهدف إلى أن تكون وريثة لغة JavaScript القديمة التي تعمل على المتصفحات, الأن يمكن أيضا تشغيل شفرة Dart على المتصفحات وذالك بترجمة الشفرة عبر الأداة dart2js المقدمة من موقع Dart الرسمي.

لغة Dart هي لغة برمجة مفتوحة المصدر وهي من اللغات التي تدعم البرمجة الكائنية (Object Oriented Programming) وال Syntax الخاص بها شبيه بلغة JAVA و TypeScript, وما يميز هذه اللغة هي أنها سهلة في تعلمها جدا وخصوصا للمطورين صفحات الويب ب JavaScript.

أيضا لغة dart تتميز بميزة إعادة التحميل السريع (Hot Reload) وهذه الميزة تتيح للمطورين برؤية كل تغيير في جزء من الثانية في شاشة المحاكي أو شاشة الجهاز الذي نختبر فيه تطبيقنا في مرحلة التطوير.

مثال الكود:

void main() {
  print('Hello, World!');
}

لماذا سأستعمل Flutter ؟

كما ذكرنا سابقا أن كل من الأندرويد و الأيفون لديهما لغة خاصة للتطوير تطبيقاتهم, فهنا جاءت Flutter بشكل أساسي لتطوير تطبيقات الاندرويد و الايفون بكود سورس واحد يعني مشروع واحد سيقوم باستخراج تطبيق خاص للأندرويد و تطبيق خاص للأيفون, و بهذه الطريقة سيعمل التطبيق على منصات مختلفة ويعمل مثل تطبيقات الأصلية للجهاز يعني بكفاءة عالية.

فيما يتعلق بواجهة المستخدم، ليست هناك حاجة لاستخدام واجهة مستخدم DSL خارجية ك XML التي اعتدناها مع Android Studio. جميع عناصر الواجهة هي عبارة عن Widgets فقط يعني أي شيئ في لغة Dart هو قطعة (Widget).

تأتي Flutter مع مئات من العناصر (Widgets) أو المكونات التي تتيح لنا إنشاء واجهة أو تطبيق إحترافي جدا بأسطر قليلة, وأيضا يمكننا إضافة الحركة لتلك العناصر وجعلها ديناميكية و متحركة أكثر أو أقل تعقيدًا بكل ببساطة وبكل سهولة, كما لو أننا نحركها في صفحة الويب 😄.

صورة توضيحية لتركيب Widgets في Flutter:

سنتطرق للشرح جميع هذه Widgets في مقالات خاصة بها.

ولهذا فإن Flutter تضع نفسها كرائد مستقبلي في تطوير تطبيقات للأجهزة المحمولة, لكن وصولها لا يزال حديثا حتى أنها ليس لها مصادر متعددة للتعلم, على عكس منافسه Ionic أو React Native الذين رسخوا أنفسهم في السوق خصوصا أنهم يدعمو لغة الويب.

تأتي Flutter مع محرر الأكواد Visual Studio Code والذي يأتي ب extension تساعدنا في تنسيق الكود و تكملة الكود عوضا عنا وهو خفيف على النظام ليس ك Android Studio.

تطبيقات تم تصميمها بها ؟

Conjugaison – la tour Eiffel

مثال حي:

Flutter

موقعها الرسمي: هنا.

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا انك انت العليم الحكيم .. اكتب بما فيه فائدة للآخرين هنا .. سواءاً عن التقنية أو التجارب الشخصية أو مواضيع متنوعة .. اكتب وأدون تجاربي واشارككم بعض اللحظات والمواضيع المفيدة ..