تحدثنا في المقال السابق ضمن سلسلة الدروس التي نتحدث فيها عن البرمجة عن طرق تعلم برمجة تطبيقات الأندرويد، وتعرفنا في هذا الدرس على مجموعة من الأدوات التي تحتاجها للبدء وكذلك مجموعة من مصادر تعلم برمجة التطبيقات، وفي هذا الدرس إن شاء الله سنكمل الحديث في نفس السياق وسنتحدث عن لغة برمجة جديدة ظهرت حديثًا وهي لغة كوتلن Kotlin، وتعتبر هذه اللغة بمثابة طفرة وتقدم هائل في البرمجة بالنسبة للميزات التي توفرها وتجعلها تتفوق على لغات أقدم بكثير وفي نفس مجالها، سنتعرف في هذا المقال بإذن الله على مقدمة عن لغة Kotlin وما هي الاستخدامات التي يمكنك الاعتماد على القيام بها باستخدام هذه اللغة وأيضًا أبرز مصادر تعلم لغة الكوتلن واحترافها.
** مع النمو المتسارع للمهام التي تقوم بها لغات البرمجة والتطور الكبير الذي شهدته هذه اللغات، تشهد هذه الفترة بزوغ نجم لغات برمجية جديدة على الساحة، حيث تسعى هذه اللغات إلى سد نواقص في بعض اللغات أو تحسين أدائها أو القيام بمهام جديدة، وكما تحدثنا سابقًا عن لغة روبي Ruby وتعرفنا على كافة المعلومات عنها ومميزاتها، سنتحدث في هذا المقال إن شاء الله عن واحدة من اللغات البرمجية الحديثة وسنتعرف على كل ما يجب أن تعرفه عنها **
- في فبراير 2016م أعلنت الشركة عن صدور النسخة الرسمية الأولى من اللغة Kotlin 1.0 وقد بدأت في الانتشار بشكل كبير بين المطورين منذ ذلك الحين ولاقت قبولًا واسعًا في المجتمع البرمجي.
- بعد ذلك وفي مايو 2017 أعلنت شركة جوجل رسميًا في مؤتمر المطورين عن دعمها الرسمي للغة كوتلن كلغة من الصف الأول ويمكن استخدامها في كتابة تطبيقات الأندرويد باستخدام المنصات المختلفة.
- في الكوتلن الأمر مختلف فكل أنواع المتغيرات تكون Non-Nullable بشكل افتراضي، حيث أن الكومبايلر لن يسمح لك بتعيين قيمة Non-Nullable للمتغير، وإذا كنت تريد استخدام متغير يحمل قيمة Null يمكنك ضبط المتغير إلى Nullable، وهكذا تضمن عمل الكود الخاص بك بشكل سليم وبدون أخطاء.
- بالنسبة لكوتلن فقد تم بنائها من الصفر دون تراكمات سابقة ما يعني أنها تتطلب أكواد أقل من الجافا، فيمكنك بذل مجهود أقل في الكتابة بهذه اللغة وتوفير وقت أيضًا، ويمكننا رؤية مثال على الفرق في الكتابة باللغتين.
- الحل الذي تقدمه لغة كوتلن هو القيام بإضافة أي مميزات تريد إضافته لـ Class وبدون عمل Extend له.
- طبعًا تعتبر قناة بغداد الجديدة من المصادر المميزة لتعلم لغات البرمجة، وتقدم لنا القناة هذه المرة دورة مميزة لتعلم لغة Kotlin عبر مجموعة دروس مبسطة لفهم اللغة بشكل سهل ومعرفة كيفية برمجة تطبيقات الأندرويد باستخدامها.
* دورة Hassouna Academy
- من الدورات المميزة أيضًا لتعلم الكوتلن دورة أكاديمية حسونة، تمر معك هذه الدورة من البداية وكيفية تنزيل نظام الجافا على الحاسوب والبدء باستخدامه ومرورًا بالمهام التي يمكنك القيام بها عبر هذه اللغة.
* دورة كوتلن من الصفر
- في هذه الدورة المميزة على قناة Ahmed Azz يتم استعراض اللغة من الصفر، فهي دورة مناسبة لك إذا لم تكن لديك أي خبرة مسبقة في البرمجة، فيمكنك متابعتها والبدء في تعلم اللغة بشكل متدرج.
* دورة Salim 3dd
- دورة أخرى مميزة فيها مجموعة دروس بسيطة يمكنك الاستعانة بها لمعرفة كيفية البدء مع هذه اللغة، ومعرفة كيفية التعامل مع المتغيرات والقيم، يمكنك متابعة هذه الدورة كتمهيد لدراسة اللغة.
- يوفر لك الموقع الرسمي للغة بعض الشروحات التي يمكنك الاستعانة بها لفهم هذه اللغة وكيفية استخدامها، كما يوفر الموقع أداة أونلاين يمكنك استخدامها لكتابة الأكواد بشكل مباشر وتجربتها.
* Kotlin for Android Developers
- هذه الدورة مقدمة من موقع Udacity الغني عن التعريف، ويشمل هذا الكورس احتراف تطوير الأندرويد باستخدامها، ولكن يتطلب هذا الكورس أن تكون لديك خبرة في البرمجة بالجافا لمدة عام على الأقل.
* Kotlin Tutorial for Beginners
- دورة أخرى مميزة يمكنك متابعتها لكي تتعلم اللغة بشكل كبير وتتعرف على كيفية الاعتماد عليها في تطوير تطبيقات الأندرويد عبر مجموعة فيديوهات مبسطة يتم شرح مبادئ ومفاهيم اللغة فيها.
* يُمكنكم أيضًا مشاهدة:
- تعلم برمجة تطبيقات الآيفون
- تعلم تطوير الويب Web Development
- أفضل لغات البرمجة التي يجب أن تتعلمها
- أفضل مصادر تعلم لغات البرمجة باللغة العربية
- أفضل لغات البرمجة في مجال الذكاء الاصطناعي
** مع النمو المتسارع للمهام التي تقوم بها لغات البرمجة والتطور الكبير الذي شهدته هذه اللغات، تشهد هذه الفترة بزوغ نجم لغات برمجية جديدة على الساحة، حيث تسعى هذه اللغات إلى سد نواقص في بعض اللغات أو تحسين أدائها أو القيام بمهام جديدة، وكما تحدثنا سابقًا عن لغة روبي Ruby وتعرفنا على كافة المعلومات عنها ومميزاتها، سنتحدث في هذا المقال إن شاء الله عن واحدة من اللغات البرمجية الحديثة وسنتعرف على كل ما يجب أن تعرفه عنها **
ما هي لغة كوتلن Kotlin؟
- كوتلن هي لغة برمجة كائنية Object Oriented مفتوحة المصدر وقد تم تطويرها من لغات متعددة مثل جافا Java وجافا سكريبت JavaScript، وقد تم تطوير اللغة لتدعم العمل على Java Virtual Machine، وقد قامت شركة JetBrains بتطوير تلك اللغة وهي نفس الشركة التي قامت بتطوير IntelliJ IDEA والذي بُنيت عليه بيئة الأندرويد ستوديو Android Studio وهي المنصة الخاصة ببناء تطبيقات الأندرويد، وبالتالي فنفس الشركة التي قامت بتطوير اللغة هي نفسها التي قامت بتطوير بيئة العمل، وتم تصميم هذه اللغة لكي تتوافق بشكل كامل مع لغة الجافا وحزمة JDK.تاريخ لغة كوتلن Kotlin
- في عام 2010م بدأت شركة JetBrains في تطوير هذه اللغة قبل أن تعلن الشركة عن ذلك في عام 2011م وأصبحت اللغة مفتوحة المصدر بشكل رسمي في 2012م وحصلت على مساهمات كبيرة من قِبل أكثر من 100 مطور على منصة GitHub بالإضافة إلى فريق العمل الخاص بهذه اللغة تحت قيادة Andrey Breslav مما أدى إلى انتشارها بشكل كبير بين المطورين.- في فبراير 2016م أعلنت الشركة عن صدور النسخة الرسمية الأولى من اللغة Kotlin 1.0 وقد بدأت في الانتشار بشكل كبير بين المطورين منذ ذلك الحين ولاقت قبولًا واسعًا في المجتمع البرمجي.
- بعد ذلك وفي مايو 2017 أعلنت شركة جوجل رسميًا في مؤتمر المطورين عن دعمها الرسمي للغة كوتلن كلغة من الصف الأول ويمكن استخدامها في كتابة تطبيقات الأندرويد باستخدام المنصات المختلفة.
مميزات لغة الكوتلن Kotlin
* لغة ناضجة مهيئة
- تعتبر هذه اللغة من اللغات الناضجة حيث استغرقت حوالي 6 سنوات قبل أن يتم إصدارها بشكل رسمي، وقد مرت خلال هذه الفترة بالكثير من المراحل قبل صدورها، ولذا فنجد أن هذه اللغة تكاد تخلو من الأخطاء.* متوافقة مع Android Studio
- كما ذكرنا في فقرة سابقة فإن اللغة والبيئة التي تعمل عليها تم تطويرهم من قبل نفس الشركة، وبالتالي فتجد أن اللغة تعمل على المنصة بشكل سهل وميسر وبدون أي مشاكل على الإطلاق.* لها مستقبل مشرق
- بدايةً من الشركة المطورة للغة والتي تعتبر من أشهر الشركات في هذا المجال ومرورًا بشيوع اللغة بين المطورين واستخدام شركات كبرى لها في تطبيقاتها الخاصة وانتهاءً بدعم جوجل الرسمي لها يوضح لنا مستقبل اللغة.* مستلهمة من لغات سابقة
- إذا كنت مبرمج ولك خبرات سابقة في لغات البرمجة خاصةً الجافا وسي شارب فلن تجد مشكلة في تعلم هذه اللغة، حيث أنها متقاربة مع تلك اللغات بالرغم من وجود تطويرات ضخمة لهذه اللغة لكن يبقى الأساس متشابه.* أخطاء أقل
- واحدة من المميزات الكبرى للغة Kotlin والتي ساعدتها على الانتشار بشكل كبير هي القضاء على مشكلة NullPointerException وهي مشكلة مألوفة مع المبرمجين خاصةً مبرمجي الجافا، سنتعرف على هذه المشكلة وكيف تم حلها في الفقرة القادمة.* إمكانية التشغيل المتداخل
- كما ذكرنا فإن الكوتلن مستلهمة من لغة Java وبالتالي فهي متوافقة معها بشكل كامل، حيث يمكنك تحويل الأكواد من وإلى الجافا ويمكنك كتابة جزء من الكود بلغة وإكماله بالأخرى ويوجد مترجم في الأندرويد استوديو يقوم بالترجمة بسهولة.* توفير الوقت والمجهود
- من مميزات هذه اللغة أنك ستبذل مجهود أقل في الكتابة بها مقارنة بلغات أخرى كالجافا مثلاً فهي توفر أكواد أقل منها بنسبة 20% وبالتالي فهذا سيوفر عليك الكثير من الوقت والجهد.* لغة حديثة العهد
- واحدة من المميزات التي تدفعك لتعلم لغة الكوتلن هي أنها لغة حديثة العهد مفتوحة المصدر وإذا نجحت في تعلمها وإتقانها فإن هذا سوف يوفر لك الكثير من الوظائف في الداخل والخارج، وبالتالي فهي فرصة يجب انتهازها.ما الفرق بين لغة كوتلن Kotlin ولغة جافا Java؟
1- حل مشكلة NullPointerExeption بشكل افتراضي
- تتفوق لغة الكوتلن في هذا الأمر على الجافا، فهذه المشكلة شائعة في لغات البرمجة وهي مشكلة محبطة بالذات لمطوري الجافا، وهذه المشكلة ببساطة كالتالي.. في الجافا يسمح لك بتعيين Null إلى أي متغير ولكن إذا حاولت أن تستخدم Object Reference يحتوي على قيمة Null فسوف تواجه هذه المشكلة، وعليك أن تتحقق من الكود بشكل يدوي للتأكد منه.- في الكوتلن الأمر مختلف فكل أنواع المتغيرات تكون Non-Nullable بشكل افتراضي، حيث أن الكومبايلر لن يسمح لك بتعيين قيمة Non-Nullable للمتغير، وإذا كنت تريد استخدام متغير يحمل قيمة Null يمكنك ضبط المتغير إلى Nullable، وهكذا تضمن عمل الكود الخاص بك بشكل سليم وبدون أخطاء.
2- لغة كوتلن تتطلب مجهود أقل من جافا
- إذا نظرنا إلى لغة الجافا فسنجد أنه تم تطويرها قبل أكثر من عقدين من الزمان، وقد تم تطويرها لكي تكون متوافقة مع ما قبلها، وعند إضافة تحديثات إليها تتزايد أعداد الأسطر المستخدمة للكتابة بها وهكذا يستمر الأمر.- بالنسبة لكوتلن فقد تم بنائها من الصفر دون تراكمات سابقة ما يعني أنها تتطلب أكواد أقل من الجافا، فيمكنك بذل مجهود أقل في الكتابة بهذه اللغة وتوفير وقت أيضًا، ويمكننا رؤية مثال على الفرق في الكتابة باللغتين.
- سطر بلغة الجافا: StringBuilder sb = new StringBuilder();
- نفس السطر بلغة كوتلن: val sb = StringBuilder()
3- تمديد المهام
- من يستخدم لغة السي شارب C# سيعرف هذه الميزة وهي غير موجودة في لغة الجافا ولكنها تأتي بشكل افتراضي في لغة كوتلن، باختصار هذه الميزة إذا كنت تريد إضافة أي مميزات لـ Class قمت بإنشائها مسبقًا فإنك تقوم بعمل تمديد Extend له وتقوم بكتابة ما تريده ولكن ربما قد تواجه مشكلة Final Class.- الحل الذي تقدمه لغة كوتلن هو القيام بإضافة أي مميزات تريد إضافته لـ Class وبدون عمل Extend له.
4- تجميع فئات البيانات
- من المميزات الرائعة التي توفرها لنا تلك اللغة هي ميزة توحيد الفئات وخصائصها بشكل بسيط، في لغة الجافا يقوم المبرمجين بإنشاء Class وإضافة خصائص لكي تحمل البيانات وهذا الأمر يكون ممل للغاية، ولكن في لغة الكوتلن يمكنك التخلص من هذه المشكلة حيث تستطيع كتابة Class وإضافة الـ Properties الخاصة به في سطر واحد وسيتكفل الكومبايلر بتوليد باقي الكود مثل Setter & Getter وغيرها، وهذا سيساعد على توفير الوقت والجهد.معلومات خاطئة عن لغة كوتلن Kotlin
- لم يتم تطوير الكوتلن لكي تحل محل الجافا ودعم جوجل لها لا يعني ذلك
- برمجة التطبيقات باستخدام كوتلن سيؤدي نفس المطلوب باستخدام جافا وظيفيًا
- يمكن استخدامهاعلى منصات كثيرة أبرزها Android Studio /Eclipse /IntelliJ IDEA
- اللغة لا تستخدم لبرمجة تطبيقات الأندرويد فقط وإنما لها العديد من الاستخدامات الأخرى
مصادر تعلم لغة كوتلن Kotlin
* مصادر عربية لتعلم لغة كوتلن Kotlin
* دورة قناة بغداد الجديدة- طبعًا تعتبر قناة بغداد الجديدة من المصادر المميزة لتعلم لغات البرمجة، وتقدم لنا القناة هذه المرة دورة مميزة لتعلم لغة Kotlin عبر مجموعة دروس مبسطة لفهم اللغة بشكل سهل ومعرفة كيفية برمجة تطبيقات الأندرويد باستخدامها.
* دورة Hassouna Academy
- من الدورات المميزة أيضًا لتعلم الكوتلن دورة أكاديمية حسونة، تمر معك هذه الدورة من البداية وكيفية تنزيل نظام الجافا على الحاسوب والبدء باستخدامه ومرورًا بالمهام التي يمكنك القيام بها عبر هذه اللغة.
* دورة كوتلن من الصفر
- في هذه الدورة المميزة على قناة Ahmed Azz يتم استعراض اللغة من الصفر، فهي دورة مناسبة لك إذا لم تكن لديك أي خبرة مسبقة في البرمجة، فيمكنك متابعتها والبدء في تعلم اللغة بشكل متدرج.
* دورة Salim 3dd
- دورة أخرى مميزة فيها مجموعة دروس بسيطة يمكنك الاستعانة بها لمعرفة كيفية البدء مع هذه اللغة، ومعرفة كيفية التعامل مع المتغيرات والقيم، يمكنك متابعة هذه الدورة كتمهيد لدراسة اللغة.
* مصادر أجنبية لتعلم لغة كوتلن Kotlin
* موقع Kotlinlang- يوفر لك الموقع الرسمي للغة بعض الشروحات التي يمكنك الاستعانة بها لفهم هذه اللغة وكيفية استخدامها، كما يوفر الموقع أداة أونلاين يمكنك استخدامها لكتابة الأكواد بشكل مباشر وتجربتها.
* Kotlin for Android Developers
- هذه الدورة مقدمة من موقع Udacity الغني عن التعريف، ويشمل هذا الكورس احتراف تطوير الأندرويد باستخدامها، ولكن يتطلب هذا الكورس أن تكون لديك خبرة في البرمجة بالجافا لمدة عام على الأقل.
* Kotlin Tutorial for Beginners
- دورة أخرى مميزة يمكنك متابعتها لكي تتعلم اللغة بشكل كبير وتتعرف على كيفية الاعتماد عليها في تطوير تطبيقات الأندرويد عبر مجموعة فيديوهات مبسطة يتم شرح مبادئ ومفاهيم اللغة فيها.
* يُمكنكم أيضًا مشاهدة:
- تعلم برمجة تطبيقات الآيفون
- تعلم تطوير الويب Web Development
- أفضل لغات البرمجة التي يجب أن تتعلمها
- أفضل مصادر تعلم لغات البرمجة باللغة العربية
- أفضل لغات البرمجة في مجال الذكاء الاصطناعي