بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
أما بعد فهذه دروس في تعلم البرمجة بلغة C.
سأبدا الدروس وأواصلها إن رأيت متابعة من الأعضاء.
ولقد اعتمدت على العديد من المراجع لكن أهمها هو موضوع mateo من siteduzero ولكن حتى عندما أقتبس منه فغالبا ما أضيف على ما قاله.
وسلسلة الدروس هذه ستكون بإذن الله للمبتدئين فحتى من لا يعرف أي شيء في هذا المجال يمكنه أن يطالع هذه الدروس وإن شاء الله سيستفيد منها.
الدرس الأول
ثمة العديد من الأسئلة ينبغي أن نجيب عليها قبل أن نبدأ دروسنا.
أولا ما هي البرمجة؟ وما هي أهميتها؟ ولماذا ينبغي أن أتعلمها؟
أولا ما هي البرمجة؟البرمجة لغة التخاطب بين الإنسان و الآلة تتكون هذه اللغة من العديد من الأوامر لتنفيذ مهمة معينة، أي أن المبرمج يكتب بضع كلمات للحاسوب فيقوم هذا بتنفيذها حرفيا.
وكما يعرفها البعض: "البرمجة هي أن تعلم أغبى صديق لديك طريقة كي يحل مسألة ما"
لأنه وكما هو معروف الحاسوب جهاز غبي لا يقوم إلا بتنفيذ ما يطلب منه وإذا لم تكتب ما تريده بطريقة واضحة فلن ينفذ ما تطلبه منه.
ببساطة كلمة برمجة تعني عمل برنامج إلكتروني والبرنامج يعطي للحاسوب الأوامر.
وحاسوب كل واحد منا مليء بالبرامج فالآلة الحاسبة برنامج وكل لعبة من ألعاب الفيديو برنامج.
ما أهمية البرمجة؟ ولماذا ينبغي أن أتعلمها؟
أولا من خصائص البشر أنهم مهتمون بكيفية عمل الأشياء، لست أدري عنكم ولكنني كذلك فأنا أكره أن لا أعرف كيف يعمل الحاسوب الذي أجلس عليه يوميا أو كيف تعمل البرامج التي أستخدمها.
معرفة كيف تعمل الأمور يجعل العمل عليها أكثر متعة.
ثانيا ألست ترغب في إنشاء برامج وألعاب بنفسك، هذا ليس بالأمر الصعب، صدقني فأنا أتحدث عن تجربة شخصية.
وهذه نماذج لألعاب مبرمجة بلغة C:
لعبة مبرمجة باستعمال لغة c++
وبعد انتهائك من هذه الدروس سيكون بإمكانك عمل لعبك الخاصة كما سيأتي معنا.
لا أقول أن هذا سهل بل إنه سيتطلب مجهودا ولكن كما يقال:
وما نيل المطالب بالتمني ولكن تأخذ الدنيا غلابا
قد يقول البعض لست أدري ما الفائدة من البرجمة، لماذا نحتاج للغات برمجة؟
والجواب عن هذا أن الحاسوب جهاز إلكتروني لا يتعامل بلغات البشر فكل ما يعرفه هو 1 و 0 وهذا ما يسمى با
لنظام الثنائي le langage binaire أو binary code.
إذا فالحاسوب يحول كل الأوامر إلى 0 و 1 كي يقرأها.
وإنشاء برنامج باستعمال 0 و 1 أمر غير معقول فحتى أكثر المبرمجين تهورا لم يقوموا بذلك وهنا يأتي دور لغات البرمجة.
وثمة عدة لغات برمجة مثل:
C التي سندرسها في دروسنا هاته.
C++
Java
Visual Basic
...
وهنا سنتحدث عن بعض الكلمات التي ستتكرر كثيرا وينبغي فهم معناها منذ الآن:
أدوات لغة البرمجة C ثلاثة هي:
- محرر النصوص l'éditeur de texte:الخطوة الأولى هي كتابة البرنامج أي الكود وهو ما سنسميه دائما code source وهو الذي يكتب بلغة البرمجة وسيتم تحويله إلى لغة الحاسوب.
- المترجم le compilateur:الخطوة الثانية هي تحويل code source إلى لغة الحاسوب أي النظام الثنائي الذي تحدثنا عنه فوق ولكل لغة برمجة مترجمات خاصة بها وعملية الترجمة تسمى compilation ينبغي أن يفهم هذا الكلام جيدا فعندما أقول ترجمة فيما يأتي فالمقصود هو هذا.
- المربط l'exécutable:الخطوة الثالثة هي توفير الملفات التنفيذية والتي تكون بامتدادexe
لا أريد أن أكثر من المقدمات حتى لا يصير الدرس مملا نوعا ما.
سأجيب الآن عن سؤال آخر وهو:
هل البرمجة صعبة؟ هل يتطلب نسبة ذكاء عالية؟ وهل أحتاج أن أكون متفوقا في الرياضيات والإنجليزية؟وسأبدأ الجواب من الأخير:
البرمجة لا تتطلب أن تكون متفوقا في الرياضيات بل أن تكون على دراية بالأساسيات كالعمليات الأربع وغير ذلك مما ندرسه في المراحل الابتدائية.
كما أننا لا نحتاج خصوصا في البداية إلى لغة إنجليزية قوية.
أما بخصوص الذكاء فلتعلموا أن المبرمجين ليسوا عباقرة أو أشخاصا ذوي مهارات عالية فكل شخص قد يصير مبرمجا وكل هذا يعتمد على مدى حماسه ورغبته في التعلم.
كل ما أقوله هو أنه ينبغي أن تتحلى بالصفات التالية إذا أردت أن تبدع في هذا المجال:
- الصبر وطول البال فالأمر لن يأتي بسرعة وحتى أعتى المبرمجين قد وجدوا عقبات في طريقهم.
- كثرة التمرن والمطالعة وسنصل لمرحلة التمارين والأسئلة.
- استعمال المنطق فالتفكير المنطقي هو الذي سيوصلك للحلول وليس التفكير الرياضي هو الحل دائما.
- الهدوء والتمهل وعدم الاستعجال فلا تتجاوز فقرة إن لم تفهمها فالتعلم عملية تسلسلية ومن أراد البدء من قمة الهرم فلن يتعلم شيئا.