1.1 خلفية
أهداف التعلم
بنهاية هذا القسم، يجب أن تكون قادرًا على:
- ذكر مثالين على برامج الحاسوب المستخدمة في الحياة اليومية.
- توضيح ما يجعل Python لغة برمجة مناسبة للتعلم.
برامج الحاسوب
الحاسوب (computer) هو جهاز إلكتروني يخزن المعلومات ويعالجها. ومن أمثلة الحواسيب: الهواتف الذكية، والأجهزة اللوحية، والحواسيب المحمولة، والحواسيب المكتبية، والخوادم. من الناحية التقنية، البرنامج (program) هو سلسلة من التعليمات التي يمكن للحاسوب تنفيذها. تساعد البرامج الناس على إنجاز مهامهم اليومية، وابتكار تقنيات جديدة، والاستمتاع.
يهدف هذا الكتاب إلى تعليم أساسيات البرمجة وحل المشكلات. فكتابة البرامج نشاط إبداعي، مفيد بطبيعته، ومجزٍ! ولا يتطلب هذا الكتاب أي خلفية مسبقة في علم الحاسوب. وهناك أنواع عديدة من البرامج، كما يوضح الرسم أدناه. سيركز هذا الكتاب على البرامج ذات الأغراض العامة التي تعمل عادةً "خلف الكواليس".
مفاهيم تطبيقية
الحواسيب والبرامج
لغة Python
يقدم هذا الكتاب Python، إحدى أبرز لغات البرمجة اليوم. تستخدم كبرى شركات التكنولوجيا مثل Google و Apple و NASA و Instagram و Pixar وغيرها لغة Python على نطاق واسع.
من أسباب شعبية Python توفّر عدد كبير من المكتبات لإنجاز مهام عملية حقيقية. المكتبة (library) هي مجموعة من الشِفرات التي يمكن استخدامها في برامج أخرى. تأتي Python مع المكتبة القياسية الشاملة لحل مشكلات الحوسبة اليومية، مثل استخراج البيانات من الملفات وإنشاء تقارير موجزة. فضلًا عن ذلك، يطوّر مجتمع المطورين كثيرًا من المكتبات الأخرى لـ Python. مثال: Pandas هي مكتبة مستخدمة على نطاق واسع لتحليل البيانات.
ومن أسباب شعبية Python أيضًا أن صياغتها موجزة ومباشرة. تُحدد صياغة (syntax) اللغة كيفية بناء الشِفرة. وتُحدد قواعد الصياغة الكلمات المحجوزة والرموز والتنسيق المستخدم في البرامج. ومقارنةً بلغات البرمجة الأخرى، تُعدّ Python أكثر إيجازًا وبساطةً.
مثال 1.1
برنامج "أهلاً بالعالم" في Python و Java
جرت العادة أن يكون برنامج "أهلاً بالعالم" (Hello World) أول برنامج يُكتب عند تعلّم لغة جديدة. لا يفعل هذا البرنامج سوى عرض الرسالة "Hello, World!" للمستخدم. لا يتجاوز برنامج "أهلاً بالعالم" سطرًا واحدًا في Python:
print("Hello, World!")
في المقابل، يتكون برنامج "أهلاً بالعالم" من خمسة أسطر في Java (لغة مختلفة).
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
غير أن الإيجاز ليس المعيار الوحيد لاختيار اللغة. ففي سياقات مختلفة، قد تكون لغات أخرى أكثر ملاءمة. مثال: تُستخدم Java غالبًا في تطوير تطبيقات Android.
مفاهيم تطبيقية
صياغة Python مقابل Java
جرّب بنفسك
الأغنية المفضلة
يطلب البرنامج أدناه اسمك ويعرض تحية ودية. شغّل البرنامج وشاهد ما يحدث. في رسالة الخطأ، يشير EOF إلى نهاية الملف (End of File).
- تتطلّب كثير من البرامج في هذا الفصل إدخالًا من المستخدم. أدخل اسمك في مربع الإدخال أسفل الشِفرة. شغّل البرنامج مرة أخرى، وشاهد التغييرات.
- انسخ الأسطر التالية إلى نهاية البرنامج:
song = input()
print("Cool! I like", song, "too.")
print("What is your favorite song?") song = input() print("Cool! I like", song, "too.") - يقرأ البرنامج المعدّل سطرين من الإدخال:
nameوsong. أضف أغنيتك المفضلة إلى مربع الإدخال أسفل اسمك، وشغّل البرنامج مرة أخرى.
سيشرح القسم التالي من الكتاب كيفية عمل print() و input(). يمكنك تجربة هذه الشِفرة كما تشاء قبل الانتقال إلى القسم التالي.