تعلّم البرمجة بلغة كوتلن (1): عن الدورة وفهرس الموضوعات

تعلّم البرمجة بلغة كوتلن (1): عن الدورة وفهرس الموضوعات
أستمع الى المقال

عن هذه الدورة:

نظرا للتقدم والتطور السريع الذي يشهده العالم حاليا في المجالات التقنية، أصبح من المهم جدًا تعلم إحدى أهم هذه المجالات، ألا وهي البرمجة. وأهم ما يميز البرمجة – غير المستقبل الواضح لهذه المهنة – أن من يعمل بها، يمكنه العمل من أي مكان، البيت، القهوة، الحديقة، بالإضافة للحرية في اختيار نوع العمل، مثل، العمل مع شركة محلية مباشرة، أو تعاقد حر مع شركات في أي مكان من العالم، أو إنشاء تطبيقات شخصية دون أن ننسى المداخيل العالية مقارنة بمهن أخرى، وغيرها الكثير يوفره تعلم هذه التقنية. نتيجة لذلك، يعد مجال البرمجة من المجالات المطلوبة في سوق العمل – وسيظل لفترة طويلة – خاصة بعد انتشار العمل من المنزل، بسبب الجائحة.

لذا، عزمنا في موقع ExVar، الأخذ بيد القادمين الجدد إلى تعلم البرمجة، بتوفير دورة مجانية عن برمجة الحاسب من الصفر وحتى الاحتراف لواحدة من أهم وأحدث وأمتع لغات البرمجة الموجودة حاليًا، ألا وهي كوتلن.

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

وبالطبع ستكون هذه الدورة، البذرة لدورات قادمة على هذا الموقع. مثل، تطوير تطبيقات الأندرويد والويب فقط عبر كوتلن.

ما هي كوتلن:

كوتلن هي لغة متعددة المنصات بما في ذلك تطوير التطبيقات لمنصات الجوال مثل آي أو إس (نظام الآيفون) بجانب الأندرويد والواجهة الأمامية Front-end ومن جهة الخادم Back-end لتطبيقات الويب وبرمجة الحوسبة السحابية Cloud Development وعلوم البيانات Data Science.

وتتميز كوتلن أيضًا بأنها سهلة ولا تحتاج وقت طويل لتعلمها بالنسبة للمبتدئين. أما بالنسبة لمن لديه خبرة سابقة في أي لغة برمجة، فلن يبذل مجهود يذكر في فهم تركيبها لسهولته. ورغم هذه السهولة، تعتبر كوتلن لغة قوية أيضًا في إنتاج التطبيقات المستقرة الخالية من المشاكل عكس لغة الجافا مثلًا. وهذه بعض الأسباب التي جعلت كوتلن تتفوق على جافا في عالم الأندرويد، لذا نشهد الهجرة الجماعية لمبرمجي ومالكي تطبيقات الأندرويد من الأشخاص وحتى الشركات من جافا إلى كوتلن. المزيد عن كوتلن في درس لماذا كوتلن؟

لمن هذه الدورة:

لا يحتاج فهم محتويات هذه الدورة إلى سابق معرفة في البرمجة، فستتعلم في هذه الدورة برمجة الحاسب من الصفر، بالإضافة لأساسيات كوتلن، بطريقة شاملة ومفصلة وواضحة.

مواضيع هذه الدورة:

مواضيع عامة في برمجة الحاسب:

برمجة وخوارزميات الحاسب.

الخوارزميات وهياكل البيانات.

وحدات قياس المعلومات في الكمبيوتر ( Bit, Byte …etc ).

النظام الثنائي والست عشري.

تجهيز بيئة التطوير لكوتلن:

بيئات التطوير المتكاملة الـ IDE.

سطر الأوامر CLI.

المترجم compiler والمفسر interpreters.

كوتلن كلغة JVM.

تنفيذ أول برنامج كوتلن عبر واجهة سطر الأوامر.

بيئة التطوير المتكاملة Intellij IDEA IDE.

أداة البناء Gradle.

لماذا كوتلن؟.

أساسيات البرمجة عبر لغة كوتلن:

مرحبًا بالعالم Hello, World!.

المتغيرات والقيم var & val

أنواع البيانات Data Types.

الدوال Functions.

كتلة التعبير الشرطي if.

القوالب النصية String Templates.

أنواع العدد Number Types.

القيم المنطقية Booleans.

حلقة التكرار while.

حلقة التكرار for والنطاقات.

الكلمة المفتاحية in.

الفرق بين Expressions & Statements.

مقدمة في الكائنات:

ماهي الكائنات Objects.

إنشاء الأصناف Classes.

الباني Constructor.

التغليف Encapsulation.

الحزم Packages.

الاختبار Testing.

الاستثناءات Exceptions.

التجميعات Collections.

القوائم Lists.

الأطقم Sets.

الخرائط Maps.

المصفوفات Arrays ومعامل القوائم vararg.

سهولة الاستخدام:

وظائف إضافية Extension Functions.

التحميل الزائد أو إعادة التعريف Overloading.

التعبير الشرطي When.

أصناف الثوابت التعددية Enum.

أصناف البيانات Data Classes.

تفكيك التصريحات Destructuring Declarations.

أنواع البيانات التي تقبل قِيَم فارغة Nullable Types.

الاستدعاءات الآمنة والعامل Elvis.

وظائف إضافية لـ Nullable Types.

مقدمة إلى البرمجة المُعمَمّة Generics.

خاصيّات إضافية Extension Properties.

أوامر القفز والعودة Jumps and returns.

البرمجة الوظيفية:

دوال اللامبدا Lambdas.

العمليات على التجميعات Collections.

مراجع أعضاء الصنف Member References.

الدوال ذات المرتبة الأعلى Higher-Order Functions.

التعامل مع القوائم Lists.

بناء الخرائط Maps.

المتتاليات Sequences.

الدوال المحلية والمجهولة Local and Anonymous Functions.

تقليل و طي القوائم Reducing And Folding Lists.

التعاوديّة Recursion.

البرمجة الكائنية OOP:

الواجهات Interfaces.

الباني الثانوي Secondary Constructors.

الوراثة Inheritance.

الأصناف المجردة Abstract Classes.

تحويل النوع للأعلى Upcasting.

تعدد الأشكال Polymorphism.

التركيب Composition.

الوراثة والدوال المُلحقة Inheritance & Extensions.

تفويض الصنف Class Delegation.

تحويل النوع للأسفل Downcasting.

الأصناف المغلقة Sealed Classes.

فحص النوع Type Checking.

الأصناف المتداخلة Nested Classes.

الكائن Object.

الأصناف الداخلية Inner Classes.

الكائنات المرافقة Companion Objects.

تجنب الأخطاء:

معالجة الاستثناءات Exception Handling.

التحقق من التعليمات Check Instructions.

النوع لا شيء The Nothing Type.

تنظيف الموارد Resources Cleanup.

التسجيل Logging.

اختبار الوحدات Unit Testing.

طرق لزيادة قوة الكود ونظافته:

الـلامبدا كوظيفة إضافية Extension Lambdas.

الدوال المجالية Scope Functions.

إنشاء التعميم Creating Generics.

زيادة تحميل المعامل Operator Overloading.

استخدام المعاملات Using Operators.

تفويض الخاصيات Property Delegation.

أدوات تفويض الخاصيات Property Delegation Tools.

التهيئة الخاملة Lazy Initialization.

التهيئة المتأخرة Late Initialization.

المصادر الرئيسية للدورة:

 

هل أعجبك المحتوى وتريد المزيد منه يصل إلى صندوق بريدك الإلكتروني بشكلٍ دوري؟
انضم إلى قائمة من يقدّرون محتوى إكسڤار واشترك بنشرتنا البريدية.