مشاكل شائعة في مجال البرمجة

مفهوم – في كل مجال هناك عدد من المشاكل والصعوبات الشائعة التي قد يشتهر بها المجال ومن يعملون فيه.

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

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

مشاكل شائعة في مجال البرمجة

– البرمجة امر صعب:

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

قد لا تجد هذه الصعوبة اثناء برمجتك لعبارة Hello World، و ربما قد لا تجد هذه الصعوبة أيضا اثناء برمجتك لآلة حاسبة بسيطة تشتغل على الكونسول، لكن ستجد هذه الصعوبة حتما عند برمجتك لبرنامج متكامل بكل حذافيره، او برمجتك لتطبيق كامل أيضا، او موقع من الألف الى الياء.

لذلك، إن كنت مبرمجا جديدا في هذا المجال، فعليك ان تدرك ان البرمجة تتطلب الذكاء قبل الحفظ، اما ان كنت مبرمجا سابقا، فأجزم انك واجهت العديد من الصعوبات أثناء صناعتك لبرنامج مصغر.

– الـ BUGS:

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

المشكلة ليست في ان يظهر لك المشكل او الBug ، المشكل صديقي هو انك تكتب سطرين من الاكواد البرمجية، و يظهر لك 5 أخطاء في الكود الخاص بك 🙂 ، المشكل الأخر أيضا صديقي المبرمج ، انك ستقضي 15 دقيقة في كتابة الأكواد، و 5 ساعات في حل المشاكل ، بل العجيب و الغريب في الأمر صديقي، قد تجد في الأخير ان سبب المشكل ما هو الا انك نسيت ان تقفل كود برمجي (;).

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

اقرأ ايضًا:

– ان تصلح برنامجا لم تكتبه:

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

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

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

– عدم إشتغال البرنامج بعد تسليمه:

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

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

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

– عامل الوقت:

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

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

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

اقرأ ايضًا: عادات سيئة على المبرمج تجنبها

– ان لا تجد إجابة لسؤالك على موقع StackOverFlow:

لا يوجد مبرمج في هذا العالم لا يعرف موقع StackOverflow ، فهو حلال المشاكل بالنسبة للمبرمجين ، إن حدث لك مشكل اثناء برمجتك لأحد البرامج او المواقع بأي لغة كانت ، او كنت تبحث عن كود معين لإنجاز مهمة معينة ، فيكفي ان تكتب مشكلتك في جوجل ، لا تبحث عن رابط لموقع مايكروسوفت او اوراكل للبحث عن الإجابة ، إبحث في الروابط عن موقع Stackoverflow.

شاهد السؤال المطروح و هل يناسب وضعيتك ، ان كان الجواب نعم ، انزل قليلا الى الأسفل لتجد جوابا مختوما و مجربا ، قم بفهمه ، اخذه ، جربه ، و ها قد تم حل المشكل بنجاح ، لكن ليس في كل مرة تسلم الجرة ، قد تطرح سؤالا في أحد الأحيان و تجده على موقع Stackoverflow ، فتنزل قليلا ، و لا تجد إجابة لإستفسارك ، يا لها من خيبة أمل ، و المشكل ، ان تجد ان السؤال تم طرحه سنوات خلت ، يا رباه !

هل سيتوجب علي الأن ان اجد الحل في مواقع أخرى ؟ لا ، ان لم تجد الحل في موقع Stackoverflow فلن تجده في مواقع أخرى و أضمن لك هذا ، سيتوجب عليك الأن ان تعود للوضع التقليدي و تحضر ورقة و قلما ، و تفكر و تخطط و تشغل مخك و ذكاءك قليلا و بروية الى ان تستخرج بنفسك الكود و تجربه ، و لندعو ان يشتغل معك ، فإن إشتغل ، لا تنسى مشاركته على Stackoverflow حتى يستفيد منه غيرك ، هكذا سياسة المبرمجين ، وسأضمن لك انك ستتصفح موقع Stackoverflow مستقبلا اكثر من أي موقع اخر على الإطلاق .

– الـ ; :

كابوس كل مبرمج ، حرف (;) او النقطة الفاصلة او القاطعة (Semicolon) كما يحب ان يسميها البعض ، لكننا نسميها نحن المبرمجين بالكابوس ، هذا الحرف هو الخاص بإغلاق كود معين في معظم لغات البرمجة، قليلة هي اللغات التي لا تستخدم هذا الحرف في إغلاق الكود (منها مثلا الSQL ).

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

– ان تراجع اكوادك القديمة:

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

العجيب في الأمر ، انك تحاول فهمه و فهم التعليقات التي وضعت ، و تفشل في ذلك ، انها اكواد كتبتها بأنامل إصابعي ، فكيف لي ان لا اتذكرها او افهمها على الأقل ، الغريب في الأمر ، انك ستحاول إقناع نفسك انك فهمتها ، و تأخذها من أول كود لأخر كود ، و تضعها في برنامجك الجديد الذي تشتغل عليه، فيحدث ان الكود يحدث بشكل صحيح و بدون مشاكل.

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

شاركها

اترك تعليقاً