دليلك لتعلم لغة كوتلن وأحترافها
ترتبط كوتلن في العادة بتطوير تطبيقات أندرويد، وتدور معظم النقاشات حول ذلك، لكن لدى هذه اللغة الكثير مثالية لمطوري جانب الخادم في الوقت الحالي، على الرغم من أن أي مطور أندرويد سيجد مقتطفات وأمثلة مفيدة في هذا الكتاب، إلا أن الكتاب يستهدف مطوري جافا Java) وسكالا (Scala) بشكل أساسي .
سيبدأ لتقدمه وهي هذا الكتاب بمقدمة للغة كوتلن وسيشرح كيفية إعداد البيئة قبل الانتقال إلى المفاهيم الأساسية، وبمجرد الانتهاء من الأساسيات، سيركز على مفاهيم أكثر تقدما، ولا تتفاجأ إذا رأيت بعض شيفرات البايتكود، وفي النهاية عنـد إنهاء الكتاب، ستكون مستعدا لاستخدام كوتلن في مشروعك القادم
تصنيف الكتاب :-
ما يغطيه كتاب أتقن لغة كوتلن :-
الفصل الأول، البدء مع كوتلن، يشرح كيفية تثبيت كوتلن، Jetbrains Intellij IDEA ونظام البناء Gradle وبمجرد الانتهاء من تثبيت الأدوات، سيوضح لك الفصل كيفية كتابة برنامج كوتلن الأول .
الفصل الثاني، أساسيات كوتلن، ستبدأ بالغوص في أساسيات كوتلن، بما في ذلك، الأنواع الأساسية، الصياغة الأساسية، وهياكل تدفق التحكم مثل تعليمات if الشرطية (if statements) وحلقات for و while، ويختتم الفصل بإضافات محددة للكوتلن مثل تعليمات when واستدلالات النوع .
الفصل الثالث، البرمجة كائنية التوجه في كوتلن، التركيز على جانب الكائن المتوجه في اللغة، وسنتحدث عن الأصناف، الواجهات، الكائنات و العلاقات بينهما، الأنواع الفرعية والتعددية الشكلية (polymorphism) .
الفصل الرابع، الدوال في كوتلن، يتحدث عن الدوال (وتعرف أيضا بالإجراءات أو التوابع) التي هي كـتـل البناء الأساسية لأي لغة، وسيغطي هذا الفصل الصياغة، بما في ذلك تحسينات كوتلن مثل المعاملات المسماة، والمعاملات الافتراضية ، والدالة المجردة .
الفصل الخامس ، الدوال الأعلى مرتبة والبرمجة الوظيفية، يركز على جانب البرمجة الوظيفية في كوتلن، بما في ذلك المغلفات (والتي تعرف أيضا بلامدا lambda) ومراجع الدالة، كما يغطي أيضا تقنيات البرمجة الوظيفية مثل التطبيق الجزئي، وتركيب الدالة وتراكم الخطأ .
الفصل السادس، الخاصيات، يشرح لك أن الخاصيات (properties) تعمل جنبا إلى جنب مع برمجة الكائن الموجه للكشف عن القيم في كائن أو صنف، ويغطي هذا الفصل كيفية عمل هذه الخاصيات، وكيف يمكن للمستخدم تحقيق أقصى استفادة منها، وكذلك كيفية تولد في البايتكود (bytecode) .
الفصل السابع، أمان القيم الفارغة، والانعكاس، والتوصيفات، تشرح أن سلامة القدم Null هي واحد من أهم المميزات التي يوفرها كوتلن، ويغطي الجزء الأول من هذا الفصل الأسباب والكيفيات حول سلامة القدم null في كوتلن، ويقدم الجزء الثاني من هذا الفصل الانعكاس (مراقبة الشيفرة البرمجية وقت التشغيل)، وكيف يمكن استخدامها في البرمجة الوصفية (meta programming) مع التوصيفات .
الفصل الثامن ، التعميم، والأنواع المعقمة، يشرح هذا الفصل الأنواع معقمة (Generics) أو أنواع المعاملات والتي هي عنصر أساسي من أي نظام نوع متقدم، ونظام النوع في كوتلن متطور بشكل كبير عن ذلك الموجود في جافا، ويغطي هذا الفصل التباين بما في ذلك نوع اللاشيء Nothing وأنواع البيانات الجبرية .
الفصل التاسع ، أصناف البيانات، يبين لك أن الأصناف الثابتة ومجال الأصناف الحـرة هـو موضوع ساخن في الوقت الحالي وذلك بسبب الطريقة التي تسهل بها الشيفرة البرمجية وتبسط مزامنة البرمجة، وتمتلك كوتلن العديـد من المميزات التي تركز على هذا المجال، والتي تسمى أصناف البيانات .
الفصل العاشر، التجميعات، يشرح لك أن التجميعات هي واحدة من أكثر الجوانب استخداما من أي مكتبة قياسية، وتجميعات جافا ليست استثناء. يصف هذا الفصل التحسينات التي قدمتها كوتلن إلى تجميعات JDK بما في ذلك العمليات الوظيفية مثل map و Fold و filter .
الفصل الحادي عشر، الاختبار في كوتلن، يفسر لك أن استخدام اللغة لتجربة الشيفرات البرمجية هي واحدة من البوابات إلى أي لغة جديدة، ويوضح لك هذا الفصل كيف يمكن أن يستخدم إطار التجربة KotlinTest لكتابة التعابير والاختبارات القابلة للقراءة بشكل أقوى من التي تسمح بها اختبارات Unit القياسية .
الفصـل الـثـاني عشـر الخـدمات المصغرة في كوتلن، يـبيـن لـك كيـف أصبحت الخـدمات المصغرة ( Microservices) تهيمن على معمارية جانب الخادم في السنوات الأخيرة، وكوتلن هو خيار ممتاز لكتابة مثل هذه الخدمات، سيقدم لك هذا الفصل إطار Lagom microservice وسيشرح كيفية استخدامه لعمل تأثيرات كبيرة مع كوتلن .
الفصل الثالث عشر، التزامن، سيشرح لك أن البرامج متعدد النـوى (multi-core) تصبح أكثر أهمية في إطارات جانب العميل، وسيركز هذا الفصل على المقدمة القوية لتقنيات البرمجة المتزامنة المستخدمة في التطوير الحديث، بما في ذلك، الخيوط، والأنواع الأولية المتزامنة بني المستقبل (futures) .
ما الذي تحتاج إليه مع هذا الكتاب ؟
تحتاج في هذا الكتاب إلى حاسوب يعمل على نظـام مـاك، أو لينكس أو ويندوز قادر على تشغيل أحـدث إصدارات جافا، ومن المستحسن أن يمتلك الجهاز ذاكرة قادرة على تشغيل النسخة الحديثة من بيئة التطوير المتكاملة Jetbrains’ Intellij IDEA .
لمن هذا الكتاب ؟
هذا الكتاب للأشخاص الذين يمتلكون خبرة قليلة أو معدومة في لغة كوتلن ويرغبون في تعلم اللغة بسرعة يركز هذا الكتاب على التطوير في جانب الخادم في كوتلن وسيكون مناسبا لمطـور من طـرف الخـادم أو من يرغب في تعلم ذلك ولا تلزم معرفة مسبقة بالبرمجة الوظيفية أو البرمجـة كائنية التوجـه، لكن ينصح ببعض المعرفة باللغات الأخرى .
تحتوي بعض الفصول على أقسام موجزة توازن بين تطبيقات جافا مع ابنة عمتها كوتلن ويمكنك تخطي هذه الصفحات بالنسبة للأشخاص الذين لا يمتلكون معرفة مسبقة بجافا .