سعيد شعبان
سعيد شعبان

@Saeed_SH23

29 تغريدة 14 قراءة Sep 18, 2022
كيف تفكر كمبرمج ؟
ما الطريقة الصحيحة للتعلم ؟
وكيف تقوم بحلول المشاكل البرمجية ؟
كيف تقوم بتقسيم وحل المشاكل الكبيرة ؟
ثريد فيه نصائح وإرشادات للمبتدئين والذين يعانون من المشاكل البرمجية ويريدون التعرف علي طرق التعلم والحلول السليمة .
إذا كنت مهتمًا بالبرمجة ، فربما تكون قد شاهدت هذا الاقتباس من قبل:
"يجب أن يتعلم كل شخص في هذا البلد برمجة جهاز كمبيوتر ، لأنه يعلمك التفكير" - ستيف جوبز .
ربما تساءلت أيضًا عما يعنيه ، بالضبط ، التفكير كمبرمج؟ وكيف يمكنك أن تفعل ذلك؟؟
بشكل أساسي ، الأمر كله يتعلق بطريقة أكثر فاعلية لحل المشكلات في هذا الثريد ، الهدف هو ان تتعلم بهذه الطريقة
في نهايته ، ستعرف بالضبط الخطوات التي يجب اتخاذها لتكون قادرًا على حل المشكلات بشكل أفضل لماذا هذا مهم؟
حل المشكلات هو المهارة الأساسية كلنا لدينا مشاكل كبير وصغير.
لكن كيف نتعامل معهم ؟
في بعض الأحيان ما لم يكن لديك نظام ، فمن المحتمل أن تكون هذه هي الطريقة التي "تحل بها" المشكلات بشكل عشوائي (وهو ما يفعله المبتدؤن دائما):
كالمعتاد تجرب الحل.
إذا لم يفلح ذلك ، جرّب واحدًا آخر.
إذا لم يفلح ذلك ، كرر الخطوة 2 حتى يحالفك الحظ.
في بعض الأحيان أنت محظوظ لكن هذه هي أسوأ طريقة لحل المشاكل!وهي مضيعة هائلة ، ضخمة للوقت.
أفضل طريقة تتضمن الخطوة رقم 1 هي وجود إطار عمل مع الخطوة رقم 2 والممارسة.
يعطي جميع أصحاب العمل تقريبًا الأولوية لمهارات حل المشكلات أولاً
تعد مهارات حل المشكلات بالإجماع تقريبًا أهم المؤهلات التي يبحث عنها أصحاب العمل ...
امتلك أسلوب للعمل
للعثور على الأسلوب الصحيح ، اتبع النصيحة الواردة في كتاب تيم فيريس حول التعلم ، "The 4-Hour Chef"
أكبر خطأ المبرمجين يرتكبونه هو التركيز على تعلم بناء الجملة بدلاً من تعلم كيفية حل المشكلات."
ماذا يجب أن تفعل عندما تواجه مشكلة جديدة؟
فيما يلي الخطوات
1. الفهم Understand
تعرف بالضبط ما هو مطلوب معظم المشاكل الصعبة صعبة لأنك لا تفهمها (ومن هنا لماذا هذه هي الخطوة الأولى).
كيف تعرف أنك تفهم المشكلة؟
عندما يمكنك شرحها بلغة إنجليزية بسيطة
يعرف معظم المبرمجين هذا الشعور هذا هو السبب في أنه يجب عليك كتابة مشكلتك ، أو رسم رسم تخطيطي ، أو إخبار شخص آخر عنها "إذا كنت لا تستطيع شرح شيء ما بعبارات بسيطة ، فأنت لا تفهمه." - ريتشارد فاينمان
2. الخطة Plan .
لا تغوص في الحل بدون خطة
خطط للحل الخاص بك! لا شيء يمكن أن يساعدك إذا لم تتمكن من تدوين الخطوات الدقيقة في البرمجة ، هذا يعني عدم القفز أو إدعاء الخبرة على الفور لكن امنح عقلك وقتًا لتحليل المشكلة ومعالجة المعلومات.
للحصول على خطة جيدة أجب عن هذا السؤال: "بالنظر إلى الإدخال X ، ما هي الخطوات اللازمة لإرجاع المخرجات Y؟"
3. التقسيم Divide
هذه هي أهم خطوة على الإطلاق لا تحاول حل مشكلة واحدة كبيرة سوف تبكي بدلاً من ذلك ، قسّمها إلى مشاكل فرعية هذه المشاكل الفرعية أسهل في الحل ثم حل كل مشكلة فرعية واحدة تلو الأخرى.
ابدأ بالأبسط
أبسط يعني أنك تعرف الإجابة (أو الاقرب اليها) يعني الأبسط أن هذه المشكلة الفرعية التي يتم حلها لا تعتمد على حل المشكلات الأخرى بمجرد حل كل مشكلة فرعية قم بتوصيل النقاط سيوفر لك ربط جميع "الحلول الفرعية"الحل للمشكلة الأصلية
هذه الطريقة هي حجر الزاوية في حل المشكلات
ناقشها
(اقرأ هذه الخطوة مرة أخرى ، إذا كان يجب عليك ذلك).
"إذا كان بإمكاني تعليم كل مبرمج مبتدئ مهارة واحدة لحل المشكلات ، على سبيل المثال ، افترض أنك مبرمج جديد وطُلب منك كتابة برنامج يقرأ عشرة أرقام ويحدد أي رقم هو ثالث أعلى رقم.
لمبرمج جديد تمامًا ، يمكن أن تكون مهمة صعبة ، على الرغم من أنها تتطلب فقط بناء جملة سهلة من أساسيات البرمجة إذا واجهتك مشكلة ، فيجب عليك تقليل المشكلة إلى شيء أبسط.
بدلاً من ثالث أعلى رقم ، ماذا عن إيجاد أعلى رقم إجمالي؟ لا يزال صعبًا جدًا؟
ماذا عن إيجاد أكبر ثلاثة أعداد فقط؟ أو أكبر من اثنين؟
اختصر المشكلة إلى الحد الذي تعرف فيه كيفية حلها واكتب الحل ثم وسع المشكلة قليلاً وأعد كتابة الحل ليطابق ، واستمر في ذلك حتى تعود من حيث بدأت "
4. هل لا زلت عالق؟
الآن ، ربما تكون جالسًا هناك تفكر هذا رائع وكل شيء ، ولكن ماذا لو كنت عالقًا ولا يمكنني حتى حل مشكلة فرعية ؟؟" أولا ، خذ نفسا عميقا. ثانيًا ، هذا طبيعي.
لا تقلق رغم ذلك يا صديقي هذا يحدث للجميع! الفرق هو أن أفضل المبرمجين الذين يحلون المشكلات هم أكثر فضولًا بشأن الأخطاء / الأخطاء أكثر من الانزعاج.
في الواقع ، إليك ثلاثة أشياء يجب تجربتها عند مواجهة الضربة:
تصحيح الأخطاء:
انتقل خطوة بخطوة خلال الحل الخاص بك في محاولة للعثور على المكان الذي أخطأت فيه.
يسمي المبرمجون هذا التصحيح
(في الواقع ، هذا كل ما يفعله مصحح الأخطاء). "إن فن تصحيح الأخطاء هو اكتشاف ما أخبرت برنامجك حقًا أن يفعله بدلاً من ما كنت تعتقد أنك طلبت منه أن يفعله."
إعادة التقييم:
خذ خطوة للوراء انظر إلى المشكلة من منظور آخر.
هل هناك أي شيء يمكن استخراجه بمقاربة أكثر عمومية؟ "أحيانًا نضيع في تفاصيل المشكلة لدرجة أننا نتجاهل المبادئ العامة التي من شأنها أن تحل المشكلة في مستوى أكثر عمومية.
: هناك طريقة أخرى لإعادة التقييم وهي البدء من جديد احذف كل شيء وابدأ من جديد بعيون جديدة ستندهش من مدى فعالية ذلك.
البحث:
حسنًا ، استخدم Google بغض النظر عن المشكلة التي تواجهها ، فمن المحتمل أن يكون شخص ما قد حلها.
ابحث عن هذا الشخص / الحل في الواقع (يمكنك تعلم الكثير من حلول الآخرين)
تحذير: لا تبحث عن حل للمشكلة الكبيرة ابحث فقط عن حلول للمشاكل الفرعية. لماذا ا؟ لأنه ما لم تكافح (ولو قليلاً) ، فلن تتعلم أي شيء. إذا لم تتعلم أي شيء ، فقد أهدرت وقتك.
الممارسة Practice .
لا تتوقع أن تكون رائعًا بعد أسبوع واحد فقط إذا كنت تريد أن تكون جيدًا في حل المشكلات ، فقم بحل الكثير من المشكلات!
الممارسة . الممارسة . الممارسة ستكون مسألة وقت فقط قبل أن تدرك أن "هذه المشكلة يمكن حلها بسهولة"
الخلاصة !!! .
الآن أنت تعرف بشكل أفضل ما يعنيه "التفكير كمبرمج" أنت تعلم أيضًا أن حل المشكلات هو مهارة رائعة يجب تنميتها
كما لو أن هذا لم يكن كافيًا ، لاحظ كيف تعرف أيضًا ما يجب فعله لممارسة مهارات حل المشكلات لديك! تفو ق رائع أليس كذلك؟ أخيرًا ، أتمنى أن تواجهك مشاكل كثيرة.
على الأقل الآن أنت تعرف كيفية حلها! (أيضًا ، ستتعلم أنه مع كل حل ، فإنك تتحسن).
"فقط عندما تعتقد أنك تجاوزت بنجاح إحدى العقبات ، تظهر أخرى لكن هذا ما يجعل الحياة ممتعة والتعلم ممتع
الحياة عبارة عن عملية اختراق هذه العوائق - سلسلة من الخطوط المحصنة التي يجب علينا اختراقها في كل مرة ستتعلم شيئًا ما في كل مرة ، ستطور القوة والحكمة والمنظور في كل مرة ، يسقط المزيد من المنافسة حتى تبقى أنت:
أفضل نسخة منك ".💪
اقرأ علي مساحة الشبكة ب Quora ..
qr.ae

جاري تحميل الاقتراحات...