المواد المساعدة على البرمجة؟؟

السﻻم عليكم يا إخواني.

ربما طرح هذا الموضوع لأكثر من مرة على هذا الموقع و غيره من المواقع لكن صراحة "دخت و دوختوني" و الله العظيم فسامحوني على هذا التكرار الملل.

أقصد هنا التباين الكبير بين من يقول أن البرمجة هي الرياضيات و المنطق و الخوارزميات و بين من يقول البرمجة ﻻ عﻻقة لها بأي من ذلك. أقصد هنا برمجة الويب بلغات PHP, Python و نحوها. أنا بدأت من جديد في تعلم البرمجة بلغة PHP بعد أن ضعفت عزيمتي و إرادتي و القصة طويلة ....

لكن سؤالي الآن هل يجب أن تتعلم الرياضيات و الخوارزميات و المنطق و نحوها حتى تكون "مبرمجيا حقيقيا" كمل يزعم أحد الفريقين الذي يرى أن هاته المواد ﻻ بد منها و الفريق الآخر الذي ﻻ يرى لتلك المواد أي أهمية اللهم أهمية بسيطة و ليس ﻻ تأثير كبير على البرمجة!!

أنا صراحة لست شخصية رياضاتية أو منطقية و لم أكن صراحة سواء في بلدي أو هنا في المهجر جيدا في الرياضيات, فضﻻ عن غيرها من المواد لأنها لم أعيرها اهتماما.

حتى أبسط لكم هذا الشيء:قصة المصفوفات Arrays و أمر foreach($array as $key) طيب أن الرياضيات هنا؟ على أن أعمى أو هي فقط قضية كتابية مع شيء من ربط اﻷشياء بين بعضها البعض أم ماذ؟؟

أفيدوني يا أحبابي فأنا و الله فير حيرة من نفسي!!

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

التعليقات

العمليات الحسابية الجمع والطرح والضرب والقسمة وغيرها هي من الرياضيات وبدونها لن تستطيع أن تبرمج شيء.

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

مثال بسيط:

سؤال: أُكتب كود لإنتاج الأعداد الأولية الأصغر من عدد ما:

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

وإن كنت تعلم أن العدد الأولي يجب أن يكون عدد فردي ستقوم بكتابة كود أفضل وأسرع من السابق

وإن كنت تعلم أن العدد إن لم يقبل القمسة على الأعداد الأولية الأصغر منه فهو عدد أولي سيجعلك تكتب كود أسرع وأفضل

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

وإن كنت تعلم بالنظريات والقوانين والدراسات حول الأعداد الأولية سجعلك تكتب الكود الأسرع والأفضل

فالرياضيات لها دور كبير في تحسين كتابة الأكواد، فالحلول البرمجية الرياضية يمكن وصفها بالحلول السحرية

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

-1

لا تستطيع رؤية اهمية الجانب الرياضي إلا بعد العمل على مشاريع ضخمة. لأن وقت التنفيذ تراكمي. وقد لا تلاحظ الـ Side-Effects لخوارزميتك في بيئة التطوير Development Phase بل ستلحظها عند العمل الحقيقي Porduction. وحينها سلتجأ الى خوارزميات أخرى.

لهذا السبب الخوارزميات مهمة. ولأنك مبتدئ قد لا تستطيع رؤية ذلك الجانب بوضوح في الصيغة البرمجية بشكل مباشر لأن مظعم الخوارزميات المشهورة قد اختزلت تفاصيلها في أوامر قد تستخدمها دون أن تعرف كيف تعمل من الخلف.