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