اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

مرحبًا،

هناك مستويات مختلفة من المسائل البرمجية التي تساعدك على تطوير مهاراة ال problem solving.

بالتالي كبداية كل ما ستحتاجه هو معرفة جيدة بإحدى اللغات البرمجية، و هذا يعني معرفة بأساسياتها و ليس بأطر عمل و مكتبات كبيرة فيها.

بعد أن تحقق ذلك يمكنك بدء محاولات حل بعض المسائل البسيطة على المواقع المختلفة التي توفر مسائل لتطوير هذه المهارة، يمكنك البدء بمواقع تقدم مسائل بسيطة مثل HackerRank و HackerEarth.

بعد أن تتقن المسائل البسيطة المبنية على كود بسيط و تفكير فقط و بدون استعمال خوارزميات يمكنك البدء بتعلم الخوارزميات و بنى المعطيات. هناك الكثير من المصادر لتعلم ذلك، أكاديمية حسوب تقدم دورة علوم الحاسب الذي تساعدك في تحقيق هذا.

بعد تعلم هذه الأمور يمكنك البدء بحل المسائل المعقدة أكثر و التي تعتمد على استعمال هذه الخوارزميات بشكل ذكي، يمكنك الانتقال إلى مواقع تقدم مسائل أكثر صعوبة مثل CodeForces.

كما أنه يجب عليك التحلي بالصبر و تكريس وقت كافٍ لتحقيق ذلك، فقد تستغرق أحيانًا ساعات لحل مشكلة ما.

كنصيحة لطريقة الحل للمسائل بشكل عام، ابدأ بفهم المسألة بشكل دقيق، ما هو الدخل و ما هو الخرج المتوقع، و ما هي الحالات الخاصة التي يمكن أن تظهر. بعدها قم بالانتقال إلى العمل باستعمال قلم و ورقة لتدوين ملاحظات حول المسألة، و التفكير في حلول ممكنة.

لا تقم بالتفكير بالكود نهائيًا في المرحلة الأولى، فحل أي مشكلة يتم بفكرة و الكود هو مجرد ترجمة لهذه الفكرة لا أكثر. بالتالي عليك التركيز على حل الفكرة و هنا تقوي مهارة ال problem solving، أما في حال قمت بالتفكير بالكود بشكل مباشر فسيكون من الصعب عليك حل المسائل المعقدة.

تحياتي.

  • 0
نشر

لا يوجد وقت محدّد للبدء في حلّ المشاكل البرمجية فيمكنك البدء في أي وقت تريد فلا يشترط ذلك أن تكون لديك خبرة سنوات لكن يفضل أن تبدأ عندما تكون لديك أساسيات في البرمجة والرياضيات، لكن يمكنك أيضا البدء بحل المشاكل البسيطة في البداية.

ما تحتاجه في البداية يمكن تلخيصه إلى التالي:

  • تعلم الأساسيات:
  1.  حاول إتقان لغة برمجة مثل بايثون، جافا.
  2.   يجب فهم البيانات الأساسية (مثل القوائم، المصفوفات، والمجموعات وغيرها).

وهذه المهارة تُكتسب من خلال الاستمرارية في حلّ المشكلات تلو المشكلات، من الطبيعي أن تظهر لك صعبة في البداية لكن لا يجب أن تستسلم، فالبرمجة مشوارها طويل، وهذه المهارة تأتي مع الوقت وتنمو.

كما أنصحك بتعلّم مهارة التفكير النقدي ومحاولة تحليل المشكلة من زوايا مختلفة قبل البدء في حلّها ثم القيام بكتابة خطوات الحل قبل البدء في البرمجة مباشرة وتعلم الخوارزميات وطريقة كتابتها واستخداماتها.

يمكنك الاطلاع على هذا النقاش من هنا:

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...