استخدام لغة Kotlin للتطوير في بيئة Android

من موسوعة حسوب

تُعدُّ لغة Kotlin أداةً مناسبةً لتطوير تطبيقات Android لأنّها تزوِّد بمنصةٍ للعمل في نظام Android بميّزات لغات البرمجة الحديثة بدون فرض أي قيودٍ جديدة.

ميزات استخدام لغة Kotlin للتطوير في بيئة Android

  • التوافقيّة (Compitability): تتوافق لغة Kotlin كليًّا مع بيئة JDK6، وبهذا تتيح  تشغيل التطبيقات المكتوبة بلغة Kotlin على الأجهزة ذات الإصدارات الأقدم من أنظمة Android بدون أي مشاكل تُذكر، كما وتدعم برمجيةُ Android Studio أدوات لغة Kotlin بشكلٍ تامّ ومتوافقٍ مع أنظمة بناء Android.
  • الأداء (Performance): تعمل التطبيقات المكتوبة بلغة Kotlin بسرعةٍ مماثلةٍ للتطبيقات المكتوبة بلغة Java وذلك بفضل البنية المتماثلةبينهما (وهي بنية bytecode)، ويُضاف لذلك أنّ لغة Kotlin تدعم الدوال المباشرة (inline functions) وبالتالي فإن شيفرات lambdas ستعمل غالبًا بسرعةٍ أكبر مقارنةً مع مثيلاتها في لغة Java.
  • توافقيّة التبديل (Interoperability): تتوافق  لغة Kotlin كليًّا مع لغة Java وذلك بدعمها لكافة مكتبات Android المتوفرة في تطبيق Kotlin، متضمّنةً عمليات معالجة التوصيفات (annotation processing) وبهذا فهي تدعم كلًا من ربط البيانات (databinding) و بيئة Dagger.
  • حجم التخزين (Footprint): تتميّز لغة Kotlin بصغر حجم تخزين المكتبات أثناء التشغيل (runtime library)، والذي يُمكن تخفيضه أكثر بالاعتماد على ProGuard، وتُضيف لغة Kotlin في التطبيقات الحقيقية عدّة مئاتٍ فقط من التوابع (methods) وبحجمٍ أقلّ من 100K بملف التطبيق (ذي اللاحقة ‎(.‎‎apk.
  • زمن ترجمة البرامج (Compilation Time): تدعم لغة Kotlin الترجمة التزايديّة الفعّالة (efficient incremental compilation)، أي  تُحضَّر بعض العمليات الاستباقيّة الإضافيّة للبناء النظيف (clean build)، وبهذا تكون سرعة البناء التزايديّ (incremental build) بسرعةٍ مماثلة (أو ربما أكثر سرعةً) ممّا هي عليه في لغة Java.
  • المُعدّل السريع للتعلّم (Learning Curve): سيكون البدء بلغة Kotlin أمرًا سهلًا للغاية بالنسبة للمطوّر بلغة Java، ويساعد المحول الآلي (convertor)  في الخطوات الأولى والذي يُستخدَم للتحويل من لغة Java إلى Kotlin والموجود في إضافات Kotlin‏ (Kotlin Plugins)، ومن المفيد كذلك الاطلاع على عددٍ من التمارين التفاعليّة.

بعض الأمثلة لاستخدام لغة Kotlin في بيئة Android

اعتمدت بعض الشركات الكبرى على لغة Kotlin في بناء تطبيقاتها، ومما جاء في تجاربهم:

  • طرحت شركة Pinterest لغة Kotlin في تطبيقها الشهير المُستخدَم من قبل 150 مليون شخص كل شهر.
  • كُتب تطبيق Basecamp بلغة Kotlin كليَّا، وقد أفادت الشركة بالفرق الكبير لدى مبرمجيها من ناحية ارتياحهم والتحسُّن الكبير بالجودة والسرعة أثناء العمل.
  • لدى تحويل تطبيق Keepsafe's App Lock بأكمله إلى لغة البرمجة Kotlin انخفض عدد الأسطر في الشيفرة بنسبة 30% وعدد التوابع (methods) المستخدمة بنسبة 10%.

أدوات التطوير في Android

تتيح لغة Kotlin عددًا من الأدوات التطويريّة في بيئة Android مما يميّزها عن لغات البرمجة الأخرى، ومن هذه الأدوات:

  • إضافات ‎Android‎‎ ‏‎(Android Extensions)‎: وهي إضافات تُضاف للمترجم (compiler) بهدف التخلص من استدعاءات findViewById()‎ في الشيفرة والاستعاضة عنها بخاصيّات تركيبيّة مُولَّدة من قِبل المترجِم (synthetic compiler-generated properties).
  • مكتبة Anko وهي مزوَّدةٌ بمجموعةٍ من المغلِّفات (wrappers) المتوافقة مع لغة Kotlin بما يتعلق بواجهات ‎Android‎‎ ‏‎(Android APIs)‎، بالإضافة إلى ميّزة DSL (أي Domain-Specific Language) والتي تتيح إمكانية الاستغناء عن ملفات التخطيط (layout) ذات اللاحقة ‎.xml واستخدام شيفرة Kotlin بدلًا منها.

الخطوات التالية

مصادر