ConstructiCat Logo
CodeBust.
Browse section ▾

Smells of AI-Generated Code.

Recurring problems in code written by AI coding assistants — how to recognize each one, why models produce it, how to fix it, and the rules that detect it.

Code Smells Mascot
التجريد الضحل

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

001
Antipatterns Mascot
التكرار بدلاً من الاستخراج

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

002
Code Smells Mascot
تجنب إعادة الهيكلة

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

003
Refactoring Mascot
العجلة المعاد اختراعها

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

004
Antipatterns Mascot
انحراف الاصطلاحات

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

011
Design Patterns Mascot
النمط القديم أو المهمل

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

012
Design Patterns Mascot
المبالغة الدفاعية

يقوم مساعدو الذكاء الاصطناعي بالتحوط ضد حالات فشل لا يمكن حدوثها، مما يلتف حول الكود الآمن بالفعل بفحوصات null زائدة عن الحاجة، وجمل حماية ميتة، وكتل try/catch شاملة تزيد من التعقيد دون تقديم أي حماية فعلية.

013
Antipatterns Mascot
الإعدادات المكتوبة بشكل مباشر

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

014