لا تستعمل وصلات الخطوط Font Ligatures Link to heading
وصلات الخطوط (Font ligatures) هي ميزة جمالية في بعض خطوط البرمجة. حيث يُدمج أكثر من رمز ليشكلوا رمزاً واحداً لتسهيل القراءة وإطفاء سمة مميزة على الكود.
تبدوا جميع الرموز للمستجدين في البرمج غريبة، فقلّما تجد أحداً قد استعمل { أو | أو < من قبل. وعندما تستعمل وصلات الخطوط، تبدوا تلك الرموز أكثر غرابة، ويجدون صعوبةً في إيجادها واستعمالها بالإضافة لتشتيت انتباههم.
لنأخذ مثلاً
bool isAdult = person.age >= 18;
انتبه عند التحدث عن الكُتل البرمجية Code Blocks Link to heading
يُقصد بالكتل البرمجية (Code Blocks) مجموعة التعلميات التي تقع داخل تعليمة شرطية أو حلقة أو تابع إلخ. في اللغات التي تتبع أسلوب C، تبدأ الكتل البرمجية بـ { وتنتهي بـ }.
إيصال مفهوم الكُتل البرمجية ليس بسيطاً ,وله 3 أنواع رئيسية، أشهرها هو أسلوب الـ C المتبع في جافا وجافاسكربت الذي وصفناه. أمّا في بايثون، تقع التعليمات في كتلة برمجية واحدة إذا كان لها نفس المسافات الفارغة.
def my_function():
# first code block
for x in range(4):
# second code block
if x > 4:
# third code block
print(x)
# back to second code block
print(x*2)
أما بأسلوب C يبدو الكود أسهل على الفهم.
void my_function() {
for (int x = 0; x < 4; x++) {
if (x > 4) {
cout<<x<<endl;
}
cout<<x*2<<endl;
}
}
أما الأسلوب الأخير فيشبه السابقَ ولكن عوضاً عن الأقواس تُستعمل كلمات كـ begin و end للدلالة على البداية والنهاية.
لاحظ كود البيسك التالي:
Function my_function()
For i = 0 to 4 step 1
If x > 4 Then
Print x
End If
Print x * 2
Next i
End Function
بعد تعلّم المتحولات والجمل الشرطية كـ استخدام ‘طالما’ في الحديث اليومي ليس تماماً كاستخدامها في البرمجة، ولكنه أقرب من ‘من أجل’if، يأتي دور جمل التحكم التكرارية (الحلقات)، ويبدأ الحديث عن حلقة for والتركيزُ عليها باعتبارها من أكثر جمل التحكم استخداماً. ولكن إذا ما نظرنا لحلقتي for و while من منظور غير المبرمجين، نرى أن مبدأ وطريقة عمل while أقرب إلى طريقة الكلام اليومي. فنقول طالما المطر يهطل، نجلس في البيت و طالما تدرس تنجح.

الأمر الآخر هو بساطة حلقة while فهي تحتوي فقط على شرط، أما for فهي بالغالب تحتوي على متحول له قيمة ابتدائية وشرط تكرار ومقدار زيادة للخطوة وكل منها له ترتيب معيّن.
وبما أن كلتا الحلقتين متكافئتان ويمكن التعبير عن إحداهما بالأخرى في أغلب لغات البرمجة، فمن الأحرى إتقان أسهلهما قبل الإنتقال للأصعب.
أذكِ حب البرمجة دورياً Link to heading
يتعلم الناس البرمجة لشغفهم بها ورغبتهم ببناء شيء جميل وكبير بأيديهم، ولكن هكذا مشاريع تحتاج لوقت وجهد وخبرة. بينما بضعة التعليمات التي يتعلمها المبتدئ في أول أسبوع له بالكاد تكفي. مما يسبب للكثيرين إحباطاً وفتوراً في رغبتهم للتعلم.
الحل هو إيجاد وكتابة تمارينَ لهم بحيث يكون أغلب البرنامج مكتوباً مُسبقاً وعليهم استعمال الأدوات البسيطة التي تعلموها لإتمام النقص أو حل المشكلة أو إضافة الميزة المنشودة.
بهذه الطريقة يشعرون بأن ماتعلموه أفادهم وأنهم استعملوا البرمجة لعمل لعبة أو تطبيق بأيديهم.
لا تعطني الحلّ مباشرةً، أرني المشكلة Link to heading
التكلم عن المفاهيم بشكل مجرد قلّما يعطي نتيجةً، فمهما تكلمنا عن المصفوفات وأهميتها وكيفية استعمالها، ستبقى أمراً مجرداً محصوراً في ذهن المتعلّم ببعض الأمثلة.
ولهذا أقترح قبل التكلم عن أي مفهوم جديد، طرح المشكلة التي يحلّها. فقبل التكلم عن الجمل الشرطية طلب كتابة برنامجٍ لمقارنة سعر سلعتين، وقبل الجمل الشرطية طلب برنامجٍ لعرض مربع الأرقام من 1 إلى 10 وهكذا.
قد يكون ذلك عن طريق طرح مسألة في أول الكورس والعمل على تبسيطها وتحسينها دورياً كي يرى المتعملون الحاجة لكل تلك المفاهيم التي تعلموها.
خُلاصة Link to heading
من يطلب العُلا يسهر الليالي، ولكن القليل من المراعاة للمتعلمين يقربهم ويجذبهم لعالم البرمجة، فحب التعلم في هذا المجال هو سمة كل من دخله وهو فوق كل شيء ضرورة لازمة للاستمرار فيه.