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