في الآونة الأخيرة ، تجولت في الويب والتقيت بمجموعة متنوعة من الآراء حول ما إذا كان المبرمج يحتاج حقًا إلى الرياضيات ، وإذا كان الأمر كذلك ، فكم. سأحاول أن ألخص كل شيء وألخص.
بادئ ذي بدء ، تجدر الإشارة إلى أن الرياضيات موجودة في كل مكان تقريبًا في حياتنا. لا يمكن التفكير في الفيزياء بدون رياضيات - أعتقد أن كل شيء هنا واضح ، وليس هناك حاجة للشرح. الكيمياء أيضًا. في علم الأحياء ، يكون تأثير الرياضيات أقل بشكل ملحوظ ، ولكنه موجود أيضًا هناك (خذ ، على سبيل المثال ، الهياكل النباتية ، وكثير منها شبه كاسر).
يمكن تمثيل الموسيقى في شكل رياضي. التصميم لا يمكن تصوره بدون الرياضيات - الهندسة موجودة بالضرورة - فرع من الرياضيات. ما هو موجود - حتى المؤرخ يحتاج إلى الرياضيات (إذا كان فقط لحساب التواريخ).
صحيح أن هناك "لكن" واحد: ما هي الرياضيات بشكل عام؟ السؤال ليس خاملًا على الإطلاق ، لأن السؤال "كم تحتاج إلى معرفة الرياضيات" غامض نوعًا ما. الرياضيات هي مجموعة معقدة من العلوم: الأساس نفسه هو الحساب ، ثم يأتي الجبر ، والهندسة الابتدائية ، والحصيرة. التحليل الهندسي التحليلي. أقسامها العليا هي الرياضيات المنفصلة ، الجبر البولياني ، الطوبولوجيا ، نظرية الأعداد (الحساب العالي) والعديد من الأقسام الأخرى ، بالإضافة إلى نظرية الاحتمالات والإحصاءات. الآن يطرح سؤال أوضح: ما الذي يحتاج المبرمج إلى معرفته من هذا؟
النقطة الأولى لم تناقش - الحساب يجب أن يعرف ، بالطبع ، لجميع الناس. بدونها ، من المستحيل تأليف حتى أبسط برنامج ، وبالفعل لا يمكن التفكير في العلم بدونه.
ولكن كل شيء يصبح أكثر تعقيدًا بعض الشيء - يتم تحديد أقسام الرياضيات التي يحتاجها المبرمج من خلال تحديد
ما يكتبه. إذا كنت بحاجة إلى كتابة استوديو موسيقي على la Cubase ، يجب أن تعرف فيزياء الصوت وأقسام الرياضيات المرتبطة بها. إذا كنا نتحدث عن استوديو رسومي ، فيجب أن تعرف الهندسة بشكل احترافي (وإذا كان الاستوديو ثلاثي الأبعاد ، فعندئذٍ الطبولوجيا والجبر المصفوف). وإذا كنا نتحدث عن لعبة ثلاثية الأبعاد ، فنحن بحاجة إلى معرفة الجبر المتجه ، بالإضافة إلى ميكانيكا نيوتن.
نظرًا لأن البرمجة هي خوارزميات بشكل أساسي ، يجب على أي مبرمج أن يعرف جيدًا نظرية الخوارزميات ، ونظرية الرسم البياني ، والجبر البولي والرياضيات المنفصلة من أجل كتابة ليس فقط برامج العمل ، ولكن البرامج التي تعمل بشكل جيد. أو الأفضل: العمل بشكل جيد للغاية.
هل هي حقا بحاجة أم لا؟
وسأقول هذا بشكل عام: إذا ، على سبيل المثال ، في الماضي ، كانت البرمجة موجودة بالفعل ، لما كان المبرمج في ذلك الوقت يعرف الرياضيات جيدًا. سيكون مثل هذا "المبرمج" قادرًا أيضًا على الملاكمة ، والتسييج ، وترتيب ركوب الخيل ، والتنقل ، والتلاعب ، والتحدث بثماني لغات أجنبية ، وتأليف الضباب والتوكات ، وهو يعرف ما هو مقياس السداسي ، وقد رسم (مع التركيز على A) الصور وأكثر من ذلك بكثير . وفي بعض الأحيان كان يفعل ذلك في نفس الوقت ، بسرعة كبيرة لدرجة أن أي "قلب إنتل" حديث يدخن بهدوء على الهامش.