في هذا الدرس التطبيقي حول الترميز، ستكتب أول برنامج لك بلغة Kotlin باستخدام محرِّر تفاعلي يمكنك تشغيله من متصفّحك.
ويمكنك اعتبار البرنامج [LINK] سلسلة من التعليمات التي يحتاجها النظام لتنفيذ بعض الإجراءات. على سبيل المثال، يمكنك كتابة برنامج ينشئ بطاقة عيد ميلاد. وفي هذا البرنامج، يمكنك كتابة تعليمات لطباعة نص تهنئة أو حساب عمر شخص من سنة ميلاده.
مثلما تستخدم اللغة البشرية للتواصل مع شخص آخر، فإنك تستخدم لغة برمجة للتواصل مع نظام تشغيل الكمبيوتر. لحسن الحظ، لغات البرمجة أقل تعقيدًا من اللغات البشرية والمنطقية تمامًا!
تتم كتابة التطبيقات المتوافقة مع Android بلغة البرمجة Kotlin. لغة Kotlin هي لغة حديثة تم إنشاؤها لمساعدة مطوّري البرامج في كتابة الرموز بكفاءة وبأقل عدد ممكن من الأخطاء.
سيصعب عليك تعلّم كيفية إنشاء تطبيق وتعلّم أساسيات البرمجة في الوقت نفسه، لذلك سنبدأ ببعض البرمجة قبل البدء بإنشاء التطبيق. وبالإضافة إلى إتقان بعض أساسيات البرمجة قبل البدء في إنشاء التطبيقات، فإنّ ذلك سيساعدك أيضًا على إنشاء تطبيقك الأول لاحقًا في هذه الدورة التدريبية.
أدوات تحرير الرموز هي أدوات تساعدك على كتابة الرموز، بالطريقة نفسها التي يساعدك فيها معالج النصوص (مثل "مستندات Google") في إنشاء مستندات نصية. في هذا الدرس التطبيقي حول الترميز، أنت تستخدم محرِّر لغة Kotlin تفاعليًا في متصفِّحك. وهذا يعني أنك لست بحاجة إلى تثبيت أي برامج لتنفيذ خطوتك الأولى لتطوير التطبيقات.
المتطلّبات الأساسية
- استخدِم مواقع إلكترونية تفاعلية في متصفح الويب.
ما ستتعرَّف عليه
- طريقة إنشاء برنامج Kotlin كحد أدنى وتغييره وفهمه وتشغيله، والذي يعرض رسالة.
العناصر التي سيتم إنشاؤها
- برنامج بلغة البرمجة Kotlin يعرض رسالة عند تشغيله.
ما تحتاج إليه
- جهاز كمبيوتر مزوَّد بمتصفح ويب حديث، مثل أحدث إصدار من Chrome.
- اتصال بالإنترنت على جهاز الكمبيوتر
في هذه المُهمّة، ستستخدم محرّرًا في موقع إلكتروني لبدء البرمجة بلغة Kotlin على الفور.
استخدام أداة تعديل الرموز التفاعلية
وبدلاً من تثبيت برنامج على جهاز الكمبيوتر، يمكنك استخدام أداة مستنِدة إلى الويب لإنشاء برنامجك الأول.
- في المتصفِّح، افتح https://try.kotlinlang.org/. سيؤدي هذا إلى فتح أداة برمجة مستندة إلى المتصفح.
- من المفترض أن تظهر لك صفحة مشابهة للقطة الشاشة أدناه، وأن تحتوي على قائمة بالملفات على اليمين، ومحرر على اليسار. وقد يظهر أيضًا مربع أسود في أسفل يسار الشاشة يتضمن معلومات عن سياسة ملفات تعريف الارتباط.
تحذير: لا توافق على سياسة ملفات تعريف الارتباط الخاصة بهذا الموقع إذا لم تكن متأكدًا منها.
- انقر على X في الركن العلوي الأيمن من المربع المنبثق الأسود لإغلاقه.
- يُرجى اتّباع لقطة الشاشة التي تتضمّن تعليقات توضيحية أدناه كمرجع لتوجيه نفسك باستخدام هذا المحرِّر.
- (1) علامات التبويب التعلّم والمنتدى والتجربة على الإنترنت في أعلى الصفحة. انقر على علامة التبويب التجربة على الإنترنت، في حال لم يتم اختيارها من قبل.
- (2) مستكشف الملفات في الجزء الأيمن. يحتوي كل مجلد في هذه القائمة على مثال صغير ومستقل لتعلم لغة Kotlin.
- (3) المحرِّر في الجزء الأيسر هو المكان الذي ستُجري فيه معظم عملك كتابة الرمز.
يحتوي محرر الرموز المستندة إلى الويب هذا على العديد من الميزات الأخرى، ولكن هذه هي الميزات التي تحتاج إلى معرفتها للبدء.
فتح نموذج الرمز
- في مستكشف الملفات، إذا لم يتم تحديده من قبل، حدد أمثلة >؛ مرحبًا بالعالم! > Simplest version > SimplestVersion.kt (1 في لقطة الشاشة أدناه).
- في اسم الملف SimplestVersion.kt، لاحظ امتداد الملف .kt (انظر 1 في لقطة الشاشة أدناه). وكما هو الحال في الصور التي تحتوي على الإضافة
.jpg
أو.png
، وتتضمّن ملفات PDF الإضافة.pdf
، يجب أن تتضمّن جميع ملفات Kotlin إضافة.kt
. - لاحِظ الرمز في أداة التعديل (2 في لقطة الشاشة أدناه). تم تمييز بعض الرموز. هذا هو الرمز الذي ستعمل معه.
في ما يلي رمز البرنامج المميّز في أداة التعديل:
fun main(args: Array<String>) {
println("Hello, world!")
}
تشغيل رمز البرنامج
لا يختلف تشغيل برنامج أنشأته بشكل كبير عن تشغيل برنامج مثل معالج النصوص على جهاز الكمبيوتر. ويكمن الاختلاف في أنك عندما تشغّل برنامجًا ما لإنجاز مهمة أو تلعب لعبة، يعني ذلك أنك تهتم في المقام الأول بما يمكن أن يحققه لك البرنامج، ولا تقلق بشأن الرمز الذي يجعله صالحًا. عند البرمجة، تتمكن من معرفة والعمل باستخدام الرمز الفعلي الذي يجعل السحر يحدث.
لنتعرّف على ما يفعله هذا البرنامج.
- في أعلى المحرّر، ابحث عن المثلث الأخضر
في أعلى يسار الصفحة وانقر عليه لتشغيل البرنامج.
- إذا لزم الأمر، مرِّر إلى أسفل الصفحة حتى يظهر لك الجزء السفلي من أداة التعديل لمعرفة اللوحة في أسفل الصفحة (1 في لقطة الشاشة أدناه).
- انقر على علامة التبويب وحدة التحكم. وحدة التحكم هي مكان يمكن للبرامج من خلاله طباعة مخرجات النص.
- لاحظ
Hello, world!
مطبوعًا في لوحة وحدة التحكم، كما هو موضح في لقطة الشاشة أعلاه. أصبحت تعرف الآن ما يؤديه هذا البرنامج: وهو يطبع رسالة ترحيب عالمية أو يخرجها إلى نافذة وحدة التحكم. - نشير إلى أنّ الرسالة المطبوعة فوق
Hello, world!
هي رسالةCompilation complete successfully
. التجميع هو عملية تُحوِّل رمز برنامج Kotlin إلى نموذج يمكن للنظام تشغيله. إذا اكتملت التجميع بنجاح، فلا توجد أخطاء في البرنامج من شأنها منع تشغيله.
أجزاء برنامج
الآن وبعد أن اطّلعت على ما يفعله هذا البرنامج، ألقِ نظرة الأولى على كيفية أدائه.
- اطّلِع على البرنامج في أداة التعديل.
- لاحِظ كيف يتضمّن هذا الرمز قسمَين مختلفَين.
أهم جزء من البرنامج:
/**
* We declare a package-level function main which returns Unit and takes
* an Array of strings as a parameter. Note that semicolons are optional.
*/
في مقتطف الرمز أعلاه، يمكنك الاطّلاع على النص داخل هذه الرموز: /*
و*/.
وهذا يعني أنه تعليق، أي رسالة تحتوي على معلومات لمطوّري البرامج الآخرين. عند تشغيل البرنامج، يتجاهل النظام هذا التعليق. في الوقت الحالي، يمكنك تجاهل هذا التعليق أيضًا! ستتعلّم المزيد من المعلومات حول التعليقات في درس تطبيقي لاحق حول الترميز.
الجزء السفلي من البرنامج:
fun main(args: Array<String>) {
println("Hello, world!")
}
الأسطر الثلاثة هذه من الرمز هي البرنامج الفعلي الذي يتم تشغيل الرسالة وطباعتها.
تغيير رمز Hello World
لنغيّر البرنامج لإجراء تغيير مختلف عليه.
- يُرجى تغيير النص
"Hello, world!"
لقول"Happy Birthday!"
. - شغِّل برنامجك من خلال النقر على زر التشغيل الأخضر
في أعلى يسار الصفحة.
- في وحدة التحكم، من المفترض أن ترى الآن صورة مطبوعة واحدة (
Happy Birthday!
)، كما هو موضَّح في لقطة الشاشة أدناه.
آلية العمل
كيف يتم ذلك؟ يبدو أنّ طباعة الرمز لا يتطلّب الكثير من الرمز.
حسنًا، إذا أردت أن يكتب أحد أصدقائك &على سبيل المثال: في ورقة كبيرة، هناك الكثير من المعلومات الضمنية. وإذا أخبرتني بهذه العبارات فقط، فاكتب &'؛مرحبًا بالعالم!'، في هذه المقالة من الورق، على وضع افتراضات حول المعلومات التي لم تتركها. على سبيل المثال، سيفترضون أنهم بحاجة إلى استخدام قلم، وترغب في أن يكتبوه باستخدام الأحرف. لا يضع الكمبيوتر هذه الافتراضات، لذلك عليك تقديم إرشادات دقيقة تتضمن كل خطوة.
ومثلما هو الحال مع اللغة الإنجليزية، كذلك لغة البرمجة. إذا كنت قد تعلّمت لغة أخرى، إنك تعرف تحدي تعلّم القواعد النحوية والإملائية ربما والأبجدية الجديدة للرموز والمفردات. وعلى الرغم من صعوبة التعلّم الخاص بالبرمجة، فإنه يكون أقل تعقيدًا وأكثر تعقيدًا من التعلّم، مثل اللغة الإنجليزية.
فهم أجزاء البرنامج
الآن، ألق نظرة على الرمز. يؤدي كل جزء من هذا البرنامج غرضًا معيّنًا، وتحتاج إلى كل الأجزاء حتى تتمكّن من تنفيذ البرنامج. لنبدأ بالكلمة الأولى.
fun
fun
هي كلمة في لغة البرمجة Kotlin. تعنيfun
الدالة. والدالة هي قسم في البرنامج يؤدي مهمة محدّدة.
fun main
main
هو اسم هذه الدالة. تحتوي الدوال على أسماء، لذلك يمكن تمييزها عن بعضها البعض. ويُطلق على هذه الوظيفة اسمmain
، لأنها الدالة الأولى أو الرئيسية التي يتم استدعاؤها عند تشغيل البرنامج. يحتاج كل برنامج Kotlin إلى وظيفة تُسمىmain
.
fun main()
- ويكون اسم الدالة متبوعًا دائمًا بقوسَين (
()
).
fun main(args: Array<String>)
- داخل الأقواس، يمكنك وضع معلومات للدالة لاستخدامها. يُسمى هذا الإدخال للدالة "arguments" أو
args
للاختصار. وستعرف المزيد من المعلومات عن الوسيطات لاحقًا. ما عليك سوى معرفة أن الدالةmain
تحتوي دائمًا على هذه الوسيطة نفسها.
fun main(args: Array<String>) {}
- يمكنك رؤية زوج الأقواس المعقوفة بعد الوسيطات. وتوجد داخل الدالة رمز يُنجز مهمة. تُحيط هذه الأقواس المعقوفة بخطوط الرمز.
انظر إلى سطر الرمز بين الأقواس المعقوفة:
println("Happy Birthday!")
يطبع سطر الرمز هذا النص Happy Birthday!
.
- يطلب
println
من النظام طباعة سطر نصي. - داخل الأقواس، ضع النص الذي تريد طباعته.
- لاحظ أن النص الذي ستتم طباعته محاط بعلامات اقتباس. يؤدي هذا إلى إعلام النظام بأن كل شيء داخل علامات الاقتباس يجب أن تتم طباعته بالشكل نفسه تمامًا.
لطباعة النص فعليًا، يجب أن تكون تعليمات println
بأكملها داخل الدالة main
.
هذا هو أصغر برنامج Kotlin.
fun main(args: Array<String>) {
println("Happy Birthday!")
}
طباعة أكثر من رسالة واحدة
رائع لقد طبعت سطرًا واحدًا من النص باستخدام println() function
. ومع ذلك، يمكنك وضع أي عدد تريده من أسطر التعليمات داخل أي دالة كما تريد أو تحتاج إلى إنجاز مهمة.
- انسخ السطر
println("Happy Birthday!")
والصقه مرة أخرى أسفله. تأكّد من أن الخطوط التي تم لصقها داخل الأقواس المعقوفة لدالةmain
. - غيِّر نصًا واحدًا حتى تتم طباعته على اسم شخص معيّن، مثلاً قول &قول؛
- غيّر النص الآخر الذي تريد طباعته إلى &&ظاهر، يبلغ عمرك 25!".
ويجب أن يظهر الرمز كما هو موضّح أدناه.
fun main(args: Array<String>) {
println("Happy Birthday!")
println("Jhansi")
println("You are 25!")
}
ما الذي تتوقع أن يفعله هذا الرمز عند تشغيله؟
- شغِّل برنامجك لمعرفة وظيفته.
- انتقل إلى نافذة وحدة التحكم، وسوف ترى 3 أسطر مطبوعة في نافذة وحدة التحكم، كما هو موضح في لقطة الشاشة أدناه.
أحسنت
التعامل مع الأخطاء
يمكنك ارتكاب أخطاء أثناء البرمجة، وستوفر لك معظم الأدوات ملاحظات لمساعدتك في إصلاح الأخطاء. في هذه الخطوة، أنشئ خطأً لمعرفة ما يحدث.
- في برنامجك، أزِل علامات الاقتباس حول النص
Jhansi
، حتى يظهر هذا السطر كما هو موضّح أدناه.
println(Jhansi)
- شغِّل برنامجك. من المفترض أن تظهر لك العلامة
Jhansi
مطبوعة باللون الأحمر، وعلامة تعجب بجوار السطر 8 من الرمز، لإعلامك بمكان وجود خطأ.
- مرِّر للأسفل للاطِّلاع على وحدة التحكُّم.
- اختَر علامة التبويب "عرض المشكلة"، في حال عدم اختيارها.
- اطّلِع على علامة التبويب عرض المشاكل. وتعرض الرسالة التي تحتوي على رمز علامة التعجب نفسه وكلمة
Error
. وفي ما يلي وصف للخطأ في الشفرة.
- البحث عن الأرقام
(8, 12).
تشير هذه الأرقام إلى السطر في الرمز الذي حدث فيه الخطأ، والسطر 8، وموضع الحرف في هذا السطر حيث يبدأ الخطأ، و12
. - بَعْدَ ذَلِكْ، يُمْكِنُ الِاطِّلَاعْ عَلَى الرِّسَالَة
Unresolved reference: Jhansi
. توضِّح لك هذه الرسالة ما يعتقده النظام عن الخطأ في الرمز. وحتى إذا لم تكن تعرف معنى رسالة الخطأ، قد تتمكن من تحديد الخطأ. وفي هذه الحالة، ستعلم أنّ التعليمات حولprintln()
تطبع النص. لقد تعلّمت في وقت سابق أن النص يجب أن يكون بين علامات اقتباس. إذا لم يتم اقتباس النص، هذا خطأ. - يُرجى إضافة عروض الأسعار التقديرية مجددًا.
- شغِّل برنامجك للتأكد من عمله مرة أخرى.
تهانينا، لقد أجريت أول برنامج Kotlin وغيّرته.
هذا هو الرمز الكامل للبرنامج الذي عملت عليه في هذا الدرس التطبيقي حول الترميز.
- https://try.kotlinlang.org/ هو محرّر رموز تفاعلي على الويب حيث يمكنك التدرّب على كتابة برامج Kotlin.
- يجب أن تتضمّن جميع برامج Kotlin وظيفة
main()
:fun main(args: Array<String>) {}
- استخدم الدالة
println()
لطباعة سطر من النص. - ضع النص الذي تريد طباعته بين علامات اقتباس مزدوجة. مثلاً:
"Hello"
- كرِّر تعليم
println()
لطباعة أسطر متعددة من النص. - يتم تمييز الأخطاء باللون الأحمر في البرنامج. وتتوفّر رسالة خطأ في علامة التبويب عرض المشاكل لمساعدتك في تحديد مكان الخطأ وسببه.
يشكّل هذا الدرس التطبيقي جزءًا من الدورة التدريبية لأساسيات Android في لغة Kotlin.
يُرجى تنفيذ ما يلي:
- غيِّر تعليمات
println()
إلىprint()
. - شغِّل برنامجك. ماذا يحدث؟
ملاحظة: تعمل تعليمات print()
على طباعة النص بدون إضافة فاصل سطر في نهاية كل سلسلة.
- أصلح النص بحيث يكون كل جزء من الرسالة على السطر الخاص به.
تلميح: استخدِم \n
داخل النص لإضافة فاصل أسطر. مثلاً: "line \n break"
تؤدي إضافة فاصل أسطر إلى تغيير الإخراج كما هو موضح أدناه.
ملاحظة: يمكنك طباعة سطر فارغ من خلال عدم إدخال أي نص: println("")
.
الرمز:
fun main(args: Array<String>) {
println("no line break")
println("")
println("with line \n break")
}
الناتج:
التحقق من عملك:
إليك أحد الحلول الممكنة:
fun main(args: Array<String>) {
print("Happy Birthday!\n")
print("Jhansi\n")
print("You are 25!")
}