تمرينات
تمرين 1.1
عند علماء الكمبيوتر عادة مزعجة وهي استعمال كلمات إنكليزية شائعة للتعبير عن شيء مختلف عن معناها الأصلي. مثلاً، في الإنكليزية، كلمتي statement وcomment هما نفس الشيء تقريباً، لكن عندما نتكلم عن برنامج، فهما مختلفان كلياً.
إن المصطلحات في نهاية كل فصل موجودة للتركيز على الكلمات والعبارات التي تملك معنى خاصاً في علوم الحاسوب. عندما ترى كلمة مألوفة، لا تفترض أنك تعرف معناها!
a. في لغة الحواسيب، ما هو الفرق بين statement وcomment؟
b. ماذا يعني أن نقول أن هذا البرنامج محمول؟
c. ما هو الملف التنفيذي؟
تمرين 1.2
قبل أن تفعل أي شيء آخر، اكتشف كيف يتم ترجمة وتشغيل برنامج Java في بيئة البرمجة لديك. بعض بيئات البرمجة توفر أمثلة برمجية مشابهة للمثال في القسم 1.5.
a. اكتب برنامج "Hello, World!"، ثم ترجمه وشغله.
b. أضف تعليمة طباعة ثانية تطبع جملة ثانية بعد "Hello, Word!". شيء ظريف مثل، "How are you?". ترجم وشغل البرنامج مرة ثانية.
c. أضف تعليقاً إلى البرنامج (في أي مكان) وترجمه مرة أخرى. شغل البرنامج ثانية. من المفروض ألا يؤثر التعليق الجديد على تنفيذ البرنامج.
قد يبدو التمرين تافهاً، لكنه نقطة الانطلاق للعديد من البرامج التي سنعمل معها. لتتمكن من تصحيح الأخطاء بثقة، يجب أن تكون واثقاً من بيئة البرمجة التي تستخدمها. في بعض البيئات، من السهل أن تُضيَّع البرنامج الذي تشغله، وقد تجد نفسك تحاول تصحيح أخطاء برنامج ما في حين أنك تشغل برنامج آخر عن طريق الخطأ. إضافة (وتغيير) تعليمات الطباعة هي طريقة بسيطة للتأكد من اتصال البرنامج الذي تنظر إليه مع الخرج الذي يظهر عند تشغيل البرنامج.
تمرين 1.3
من الجيد ارتكاب أكبر عدد ممكن من الأخطاء يمكن أن تفكر فيها، حتى ترى رسائل الخطأ التي يولدها المترجم. أحياناً يخبرك المترجم ما هو الخطأ بدقة، وكل ما عليك هو إصلاحه. لكن أحياناً تكون رسائل الخطأ مضللة. سيتولد لديك إحساس يخبرك متى تثق بالمترجم ومتى سيتوجب عليك اكتشاف الأخطاء بنفسك.
a. أزل أحد أقواس الفتح المنحنية.
b. أزل أحد أقواس الإغلاق المنحنية.
c. بدلاً من main، اكتب mian.
d. أزل الكلمة static.
e. أزل الكلمة public.
f. أزل الكلمة System.
g. استبدل println بPrintln.
h. استبدل println بprint. هذا الخطأ خدعة صغيرة لأنه خطأ منطقي، وليس خطأ نحوياً. التعليمة System.out.print مشروعة، لكنها قد تفعل ما تتوقعه وقد لا تفعل.
i. احذف أحد الأقواس. أضف واحداً زائداً.