39

01 - سلسلة تبسيط البرمجة - مقدمة

سنبدأ السلسلة التي تحدثت عنها في الموضوع

https://arabia.io/go/5218

والتي ستعتمد على طريقة التشبيه بأمثلة

وليس أدل على فائدة هذه الطريقة من أن الله سبحانه وتعالى استخدمه كأسلوب في القرآن الكريم

ولا يخفى على قارئ للقرآن كم موضع ضرب فيه مثل ليكون أبلغ في إفهام القصد وتوضيح المعنى

كما أنوه أن السلسلة موجهة للذين يريدون البدء في البرمجة وليس المبتدئين لأن المبتدئين يفترض أنهم على معرفة بماهية البرمجة ، وما هو مفهومها.

ولكن لا بأس إن أحبوا الاطلاع من باب الزيادة.

وقصدت من هذا التنويه أن لا يعلق أشخاص تعليق العارف، كأن يقول هذه معلومات بسيطة وهذه معلومات بديهية أو معروفة.

ولكنها قد لا تكون معروفة بالنسبة لأولائك الذين لم يسمعوا عن البرمجة إلا بالاسم.

ولنبدأ على بركة الله.

01 - سلسلة تبسيط البرمجة - مقدمة

السلام عليكم ورحمة الله وبركاته

بسم الله الرحمن الرحيم

عندما يطلب الأب من ابنه أن يذهب للفرن ليشتري خبزا ويعطيه مالا لذلك

ثم يذهب الابن إلى الفرن ويشتري خبزا ثم يعود

فهذا أبسط مثال عن البرمجة

حيث نقول أن الأب برمج ابنه ليقوم بعمل ما وهو شراء الخبز وقد نجحت نتيجة البرمجة لكون البرمجة متوافقة مع القواعد التي يسير عليها الابن

حيث يتكلم نفس اللغة فهو يفهم ما يقوله الأب وكذلك يعرف مكان الفرن لهذا وصل إلى الفرن وتوفر المال اللازم فتمت عملية الشراء أضف إلى ذلك المبدأ والمفهوم الذي يحمله الأبن من أن طاعة الوالدين واجبة فلا يستطيع مخالفة أوامرهما

ولكن لو نقص أي من تلك المقومات لفشلت الغاية التي من أجلها تمت هذه البرمجة

فلو أن الابن صغير لا يفهم ما يقوله الوالد لما استطاع التنفيذ

ولو أنه لا يعرف طريق الفرن لما استطاع الوصول للفرن

ولو أنه لم يحمل مالا كافيا لما استطاع شراء الخبز مع أنه وصل للفرن

ولو أنه يعيش في مجتمع لا يدعو لاحترام وطاعة الوالدين لربما خالف الأمر ولم ينفذ

بعض هذه النواقص إن وجدت قد لا يوجد حل لها وبالتالي البرنامج لن يحقق الغاية

ومنها ما يتطلب إجراء تعديل أو إضافة من قبل المبرمج أو وجود آلية ذاتية للتصحيح ليتم تنفيذ البرنامج

فلو أن الطفل صغير لا يميز فلا وجود حل لهذه المشكلة ولن يستطيع بأي حال من الأحوال تنفيذ المطلوب

بينما لو أن الابن لا يعرف الطريق فإما أن يدله الأب على الطريق وهذا يعتبر زيادة المعطيات

أو أن الابن يسأل عن الطريق بنفسه وهذا لكون الطفل متعلم أن يسأل عن الأشياء التي يجهلها وهذا ما نسمية آلية التصحيح الذاتي ونجاح البرنامج متوقف على نجاح هذه الآلية

فلو أنه سأل الكثير ولم يجد من يدله لعاد إلى البيت دون تحقيق المطلوب

ولو أنه وجد أن المال لا يكفي فيكون الحل بأحد الخيارات المبرمجة مسبقا

كأن يكون الأب قد أفهم الولد أنه إذا لم يكفي المال فارجع لأخذ مال جديد

أو يقول لو كان الخبز المطلوب أغلى من المال المتوفر لديك فأحضر خبزا بقدر المال

أو ...

ويكون هناك سلسلة من الخيارات البديلة التي يقوم الابن بتجريب واحدة تلو الأخرى حتى تنجح إحداها وفي النهاية يكون هناك الخيار الأخير

وهو مثلا العودة إلى المنزل بدون خبز

بهذه المقدمة البسيطة نكون قد أنهينا درسنا لهذه الحلقة أرجو أن يكون واضحاً، والأمور ستتضح أكثر فأكثر مع المزيد من الحلقات.

وأي استفسار فأهلا وسهلا

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

فكرة غير مسبوقة اعجبتني حقاً وأريد ان انوّه على اضافة قد تكون جيّدة. لاستخدامها في الدروس القادمة بإذن الله.

محاكات القصة مع عمل برنامج فعلي مثلاً في القصة السابقة قلت الابن يذهب الى المخبز ليأتي بما طلبه منه ولده بعد توفر الشروط اللازمة. عندما تحاكيه بعمل مثلا تسجيل دخول، طلب البرنامج "الاب" من احد الوظائف "دالة تسجيل لدخول(الابن) بمقارنة كلمة المرور ... الخ " ربما لا يكون مثال جيّد وادرك تماماً انك تملك خبرة اكثر من ما املك في طرح الامثلة.

وشكراً لك. ومن هذه السلسلة سيتفيد حتى الخبراء حتى يجدوا وسيلة اخرى للشرح لطلابهم او شرح مشاريعهم. ليسُ فقط الذين يريدون البدء.

بارك الله بك أخي راشد على الإثراء

عندما بدأت بالفكرة وضعت نفسي مكان المتلقي الذي يسمع بالبرمجة لأول مرة، حينها بدأت بتجريد الشرح من كل ما هو تقني أو مهني أو متعلق بلغة البرمجة أو قواعدها أو الكود

حتى يكون التركيز على مفهوم البرمجة نفسه وليس كيفية تطبيقها أو أدواتها ووسائلها

والتطبيق العملي سيبدأ من بعد الدرس 18 إلى 30

وفي كل حلقة جديدة أحاول طرح أمثلة جديدة ليكون هناك تنوع وترسيخ للمفهوم أكثر.

حتى نحن نستفيد من هذا الاثراء، بارك الله في في علمك وعملك

الله يبارك فيك أخي

شكراً على هذه الفكرة الجميلة والأسلوب الأجمل

الدرس السابق (مقدمة السلسلة)

الدرس التالي (02)

مشكورين وما قصرتوا. ولازلنا ننتظر المزيد من كرمكم وحبكم للخير ونشر العلم

المزيد موجود وجاهز والحمد لله ولكني لم أرى أنه من الجيد وضعها دفعة واحدة

وإنما طرح حلقة كل يوم لأسباب منها :

  • أن لايظهر الأمر وكأنه سبام

  • أن لا أتعدى على حظ المواضيع الاخرى من الظهور لأنه عند طرح ثلاثين حلقة دفعة واحدة قد تذهب بعض المواضيع الجديدة إلى الوراء صفحتين أو ثلاث

  • أن يكون في الأمر عامل تشويقي لمعرفة القادم من الحلقة التالية

  • أن لاتصبح كمية كبيرة يستثقلها المتابع فيجدها كمية كبيرة ويقوم بتأجيلها ثم نسيانها.