ماذا نحتاج من الرياضيات لعلوم الحاسب ؟


التعليقات

عفوا اذا كنت ازجعتك بالاجابة مرتين على اسئلتك المتعلقة بعلوم الحاسوب, لكن هذا النوع من الاسئلة يتكرر كثيرا.

اذا اردت ان تعرف ماهي خلاصة تعليقي اطلع على هذان الرابطين:

وهذا المقال في ويكيبيديا:

اذا كنت تقصد علوم الحاسوب (اركز هنا على كلمة علوم) وليس هندسة البرامج او البرمجة, فللاسف سوف تحتاج الى الرياضيات.

ربما تشرحها كلمة واحد من اشهر العلماء في علوم الحاسوب حول الخلط بين هذه المفاهيم:

"computer science is no more about computers than astronomy is about telescopes."

او من ويكيبيديا (

)

باختصار يمكن تعريف الـ Computer scientist كالتالي (من ويكيبيديا):

A computer scientist specializes in the theory of computation and the design of computational systems

علوم الكمبيوتر تعتبر جزء من الـ Applied mathemtics, تهتهم بتطوير خوارزميات لحل بعض المشاكل العملية باحسن طريقة. تحتاج الرياضيات من اجل ان تصمم وتثبت ان الخوارزمية التي صممتها تقوم بالعمل المراد باقل جهد. اصلا ظهور مجال علوم الحاسوب كان من اجل مشاكل الـ Computatbility في الرياضيات.

اذا اردت ان تخوض في مجالات مثل Machine learning , Computer security , Image processing , Operating system و Communication systems او غيرها فالرياضيات تعتبر شيء ظروري. اما اذا كنت تستعمل ما طوره الاخرون فقط, فلا تحتاج الى التعمق في الرياضيات, لكن يجب ان تفهم الفروق بين الخوارزميات الموجودة ومتي تستعمل كلا منها.

مثلا هنا مقرر جامعة اوكسفرد, وهناك ايضا فيديوا.

اما فيما يتعلق بالـبرمجة كالـ OOP و تصميم المواقع وتعلم بعض لغات البرمجة, فلا تحتاج الى الرياضيات من اجل ذلك (الا اذا كنت ان تتعمق في خبايها), لكن هي تتعلق كثير بـالـ هندسة. مثلا في الـ OOP تتعلم الـ Design patterns وفي البرمجة اذا كنت تهتهم بجودة البرمجمة, فسوف تاخد بعين الاعتبار كيفية استعمال برنامجك للذاكرة والقرص, متى تعرف هذا المتغير؟ هل في البداية ام عندما تحتاجه؟ ماهو تاثيره على استعمالي للـ Cash ... وغيره من الاسئلة التي تتعلق بالهندسة اكثر من الرياضيات.

وفي برمجمة المواقع سوف تفكر كيفية جعل موقعك يظهر بسرعة واستعاملك للذاكرة والـ bandwidth,... الخ.

بالنسبة لتطبيقات المكتب, على حسب نوع البرنامج.

مثلا اذا كان برنامج يقوم الاتصال بقاعدة بيانات ويقوم بحفظ واستخراج بيانات, لا تحتاج الى الرياضيات , لكن تحتاج ان تتعلم Design pattern (ليس ظروريا, لكن اذا اردت ان تكتب بطريقة محترفة من الاحسن تعلمها).

اما اذا كان برنامجك يقوم ببعض العمليات الحسابية, فربما.

اما من اجل الهندسة العكسية, الجبر البولي ظروري, لانك سوف تتعامل مع ما يسمى بالغة الآلة (او الـ Assembly) لانك سوف تقوم بقراءة البرامج التي تريد هندستها عكسيا بهذه الللغة. لكن في الحقيقة الجبر البولي بسيط جدا.

كما ربما تحتاج ان تتعلم الـ Combinatorics وبعض اساسيات الجبر مثل الجبر الخطي والـ discrete mathematics لانها تستعمل كثيرا في خوارزميات التشفير.

ماذا تحتاج علوم الحاسب من الرياضيات ؟ كل شيء, الحاسوب من اخفض درجة فيه (hardware) لأعلى درجة فيه (Software) يستخدم الرياضيات.

أساسا" الحواسيب مبنية على الجبر البولياني (المنطقي) و بدونه لن يكون لدينا حواسيب الآن

ماذا تحتاج أنت كطالب حساب من الرياضيات ؟ متعلق بالمجال الذي ستدرسه, الأساسيات حتى مرحلة متوسطة مطلوبة منك من أجل المواد و من أجل فهم نواة الحاسوب أقصد The core

ربما لا نستخدم الرياضيات كثيرا" كمبرمجين (ما عدا العمليات الأساسية) لكنها مهمة من أجل فهم أفضل

كلمة علوم حاسب عامة و شاملة جدا"

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

الرياضيات تنقسم إلى ثلاث فروع أساسية وهي:

-foundations

-pure mathematics (البحثة)

-applied mathematics (الرياضيات التطبيقية)

وماتبجث عنه يندرج ضمن الرياضيات التطبيقية والتي بدورها تتوفر على فرع يسمى Computer Science وهو ما أظن أنك تحتاجه.

لفهم أفضل أقدم لك الخريطة التالية:

linear algebra

probabilities

رياضيات 1

رياضيات 2

رياضيات 3

Discrete mathematics "تراكيب متقطعه"

Probability

Boolean and Binary Algebra

"يفترض ان تكون درست اخر نوع في الصف الاول في ماده المقدمه ولكن بما انك تتعلم ذاتيا ذكرته "

 هل اكاديمية خان مكان جيد لتعلم الرياضيات ؟

لا لانك لن تجد ما ذكرته بالاعلي 

===========تعديل ========

رجعت لاعدل التعليق لانني ظننت ان الموضوع مهم بالنسبه لك

هل يمكنك التعلم ذاتيا نعم لكن المشكله هي اللغه الانجليزيه ان لم تكن متمكن منها لن افيدك في هذا الامر كوني لم اتعب في تعلمها فهنا يحين دورك للبحث

هناك من سبقك وفعلهافي سنه

طريق تمشي عليه

ونعم الرياضيات مهمه وايضا نعم التعليم الاكاديمي مهم ولا تصدق من يخبرك عكس ذلك

سلام

انا لست مبرمج ولا أفهم فيها

ولكن أعتقد أن علم المنطق الصوري والخوارزيمات اهم شيء


برمجة

مجتمع للمبرمجين من جميع المستويات لتبادل المعرفة والخبرات. ناقش لغات البرمجة المختلفة، الحلول البرمجية، والمشاريع.

24.9 ألف متابع