استخدام لغة Kotlin في نطاق JavaScript

من موسوعة حسوب
مراجعة 05:00، 2 مارس 2018 بواسطة Nourtam (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:استخدام لغة Kotlin في نطاق JavaScript}}</noinclude> تتيح لغة Kotlin إمكانيّة استهداف لغة JavaScript م...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تتيح لغة Kotlin إمكانيّة استهداف لغة JavaScript من خلال تحويل (transpiling) شيفرات Kotlin إلى ما يماثلها في JavaScript ؛ إذ تستهدف بالوقت الحاليّ المعايير القياسيّة في ECMAScript 5.1، ومن المُخطَّط له أيضًا التوافق مع ECMAScript 2015 لاحقًا.

لدى اختيارك لاستخدام لغة Kotlin بهدف كتابة شيفرات JavaScript فإنّ أي شيفرة بلغة Kotlin (كونها جزءٌ من المشروع ومن المكتبة القياسيّة المرتبطة بلغة Kotlin) ستُحوَّل إلى شيفرة JavaScript، ولكنّ هذا لا يشمل أيًّا ممّا يتعلَّق ببيئة JDK أو JVM أو Java أو أيّ من منصّاتها أو مكتباتها المُستخدَمة، ويُستبعَد أثناء عملية الترجمة (compilation) أيُّ ملفٍ غير متعلِّقٍ بلغة Kotlin.

ويحاول مترجم Kotlin ‏(Kotlin compiler) تحقيق الأهداف الآتية:

  • أن يكون الخرج بحجم تخزينٍ مثاليّ
  • أن يصبح الخرج مقروءًا بلغة JavaScript
  • تحقيق توافقية التبديل (interoperability) مع الأنظمة الوحدويّة (module systems) الموجودة
  • تحقيق نفس الفعاليّة في المكتبة القياسيّة سواءً أكان الهدف JavaScript أو JVM (لأقصى درجة ممكنة)

كيف يمكن القيام بذلك؟

يمكنك ترجمة شيفرة Kotlin إلى شيفرة JavaScript بإحدى الطرق الآتية:

  • إنشاء شيفرة Kotlin تستهدف JavaScript من طرف العميل client:
    • التعامل مع عناصر DOM: إذ توفِّر Kotlin عددًا من الواجهات الستاتيكيّة (static) للتعامل مع نمط Document Object Model ممّا يسمح بإنشاء عناصر DOM وتعديلها.
    • التعامل مع الرسوميّات مثل WebGL: إذ يمكنك استخدام لغة Kotlin لإنشاء عناصر رسوميّة في صفحة ويب بالاعتماد على WebGL.
  • إنشاء شيفرة Kotlin تستهدف JavaScript من طرف الخادم server:
    • العمل مع تقنيات طرف الخادم server: حيث يمكنك استخدام لغة Kotlin للتعامل مع JavaScript من طرف الخادم server مثل Node.js.

ويُمكِن استخدام لغة Kotlin مع المكتبات أو منصات العمل الخارجيّة مثل jQuery أو React، إذ إنّه للوصول للمنصات الخارجية عبر واجهات API (من نوع strongly-typed) تستطيع استخدام أداة ts2kt وذلك لتحويل تعريفات TypeScript الموجودة في مركز توثيق التعريف Definitely Typed إلى لغة Kotlin، أو يمكنك استخدام النمط الديناميكيّ كبديلٍ للوصول إلى أي منصة دون اللجوء إلى strong typing.

وتعمل شركة JetBrains على تطوير عددٍ من الأدوات خصّيصًا لمجتمع React مثل: React bindings وCreate React Kotlin App ؛ إذ تساعد أداة Create React Kotlin App على البدء ببناء تطبيقات React باستخدام Kotlin بدون إعدادات خاصّة بعملية البناء (build configuration).

وتُعدُّ لغة Kotlin متوافقةً مع  CommonJS و AMD و UMD مما يحقِّق تفاعلًا مباشرًا مع مختلف الأنظمة الوحدويّة (module systems).

البدء بتحويل شيفرة Kotlin إلى JavaScript

لمعرفة تفاصيل البدء بذلك يمكنك الرجوع إلى الدليل التعليميّ المُتاح بالانكليزيّة عبر الرابط.

مصادر