Summary
Highlights
يتناول هذا الجزء الحديث عن المكونات البرمجية للحاسب، بدءًا من نظام التشغيل الذي لا يعمل الحاسب بدونه، ثم البرامج التطبيقية التي تعمل تحت مظلة نظام التشغيل. ويركز بشكل خاص على لغات البرمجة ومنها لغة بايثون.
يتم تعريف برامج الحاسب بأنها مجموعة من التعليمات والأوامر التي توجه الجهاز لأداء مهام معينة. ويُشدد على أن الحاسب بدون برمجيات يظل آلة فارغة بلا فائدة، فالبرمجيات هي 'روح' الحاسب التي تشغله وتجعله يقدم ما نريده منه.
يناقش هذا القسم اللغة التي يفهمها الحاسب، وهي لغة الآلة أو الـ 'Machine Language' التي تعتمد على النظام الثنائي (الأصفار والوحدات). ويوضح أن لغة البشر (الهاي ليفل لانجويج) لا يفهمها الحاسب مباشرة، ويبرز دور المترجم (الـ Compiler أو الـ Interpreter) كوسيط أساسي للترجمة بين اللغتين.
يشرح هذا الجزء كيف يقوم الـ Compiler بترجمة لغة البشر (High-level Language) إلى لغة الآلة (Machine Language) التي يفهمها الحاسب، ثم يقوم بترجمة عكسية من لغة الآلة إلى لغة البشر لعرض النتائج على المستخدم. ويتم توضيح أن المشين لانجويج هي أوامر بدائية مبنية في دوائر الحاسب الإلكترونية.
يشرح هذا القسم مراحل تطوير البرنامج، بدءًا من تحليل المشكلة وتصميم الخوارزمية، ثم تحويلها إلى مخطط انسيابي (Flowchart)، وأخيرًا كتابة البرنامج بلغة برمجة. ويُفسر 'السورس كود' بأنه البرنامج المكتوب لأول مرة على شاشة الحاسب، وكيف يتم اكتشاف وتصحيح الأخطاء أثناء عملية الترجمة.
يسلط الضوء على خصائص لغة بايثون ككونها لغة 'عامة الغرض' (General Purpose)، و'تفسيرية' (Interpreted)، و'كائنية التوجه' (Object-Oriented). كما يستعرض ثلاث طرق لتطبيق وتنفيذ برامج بايثون: استخدام بايثون 3 مباشرة (Interpreter)، أو استخدام بيئة تطوير متكاملة مثل PyCharm، أو التطبيق أونلاين.
يوضح هذا الجزء الفروقات بين إصداري بايثون، مشيرًا إلى أن بايثون 3 هو الإصدار الحديث والمستخدم حاليًا، مع إيضاح أن الأوامر المكتوبة في بايثون 2 قد لا تعمل في بايثون 3. يقدم مثالًا عمليًا لكتابة برنامج بسيط لحساب مساحة الدائرة في بيئة الـ Interpreter، ويوضح كيفية إدخال المتغيرات وطباعة النتائج باستخدام دالة 'print'.
يستعرض هذا القسم طريقة تثبيت واستخدام بيئة التطوير المتكاملة PyCharm (IDE)، ويسلط الضوء على ميزاتها كتحرير الكود بسهولة وتنفيذ البرنامج ككتلة واحدة، على عكس الـ Interpreter. ويقدم مثالًا عمليًا مشابهًا لحساب مساحة الدائرة لتوضيح الفرق في طريقة العمل بين البيئتين.