هل الاعتماد على مكتبات خارجيه يجعلك مبرمج حقيقى؟
السلام عليكم ورحمه الله وبركاته
لدى سؤال يروادنى من فتره خصوصا انى حديث العهد بلغه بايثون ولكن هدفى هو استفهام فقط وليس جدال على الاطلاق خاصه انى بعشق هذه اللغه
انا قادم من خلفيه .net وبالتحديد فيجوال بيسك ومستوى فيه يعتبر مبتدئ ولكن لحظه ان بايثون قويه جدا لاهم سببين سهولتها الكبيره لدرجه حتى انك ليس مهم ان تقوم بتعريف متغيرات الخاصه بيك وايضا لان كل المجالات التى دخلت بها بايثون القويه ارى انها كلها تعتمد على مكتبات خارجيه فقط مجرد import ثم اسم الموديول المبرمج سلفا من قبل اشخاص اخرين محترفين فالسؤال هنا هل انا هكذا اصبح محترف عندما مثلا ادخل مجال ال machine learning واتعلم احد اشهر المكتبات الخاصه بهذا المجال فقط بمعنى الموضوع كله يعتمد على تعلم المبادئ العامه ثم تعلم الدوال الخاصه بالمكتبات فى المجال الذى اريده بمعنى لا يوجد تعب او حس ابداعى عندما ابرمج بهذه اللغه ليس مثلا عندما تستخدم لغه وليكس c++ وانت مضطر لانشاء كل شئ من الصفر حرفيا ... فما رايكم يا شباب؟
إنشاء المشروع من الصفر أمر ممتع في بداية علمية التعلم وفي المشاريع الصغيرة، أما في المشاريع الحقيقية فأنت لست بحاجة إلى إعادة إختراع العجلة بل التطوير على الموجود بالفعل فما الحاجة إلى كتابة نفس الكود ولن تصل إلى نفس جودة وفعالية تلك المكتبات في كثير من الأحيان، لأنه تم إختبارها من قبل الكثير من المستخدمين وتم إصلاح أخطاء على مدار سنوات.
وما يجعلك مبرمج جيد هو قدرتك على حل المشاكل، وأقصد بالمشاكل هو تنفيذ المطلوب منك حيث أنها أي مهمة في البرمجة هي مشكلة مطلوب لها حل ويختلف جودة الحل بناءًا على خبرة ومهارة المبرمج، لذلك عليك باستخدام الأدوات المتاحة ولن تضطر إلى كتابة الكود من الصفر إلا في حالات محدودة.
لكن ذلك لا يعني أن تستخدم مكتبة لكل شيء في المشروع، بل حسب الحاجة فقط وبحدود ومحاولة كتابة الكود بنفسك طالما هناك وقت لذلك، حيث أن استخدام مكتبات خارجية بكثرة بمثابة قنبلة موقوتة في أي مشروع، بسبب تضارب في الإصدارات لاحقًا وتعارض في الكود أو في الإعتماديات وخلافه مما يجعل عملية صيانة الكود أمر مضني.
اشكرك اخى الكريم وفعلا انا حاليا بعد ان اجتازت تعلم اغلب مبادئ بايثون اقوم حاليا بحل مشاريع برمجه الموجوده على الانترنت حتى ازيد خبرتى كان فقط استفهامى لان كما قلب انا قادم من بيئه فيجوال بيسك دوت وهذه اللغه برغم سهولتها التى تقترب من البايثون لان يوجد بها مواضيع كبيره وشائكه تحتاج وقت للتعلم واشهره احتراف ال oop بها لكن كنت قلقا ان اخذ وقت كبير مع بايثون ثط خطتى القادمه باذن الله بعد احترافها هو التوجه للجافا ثم لسى بلس بلس فكنت قلقا ان لا استطيع تعلم هذه اللغات لانه صعبه نوعا ما حتى فى ابسط الاشياء مثل شرط تعريف المتغيرات ك explicit اثناء كتابه الكود وهكذا
التعليقات