رائحة الكود
يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. (يناير 2022) |
رائحة الكود (بالإنجليزية: Code smell) في علم الحاسوب هي علامات وإشارات داخل الكود تدل على أن هناك خلل في التصميم وهي بحد ذاتها لا تعتبر خطأ برمجي، وربما نجد أكواد مليئة بهذه الروائح لكنها تعمل على ما يرام دون أي مشاكل.
يعتبر مهندس البرمجيات كينت بيك (مخترع منهجية التطوير XP) هو أول من بدأ باستخدام هذا المصطلح للدلالة على أن هناك خلل ربما يبدوا بسيطا في أول الأمر لكن سرعان ما سيتحول إلى كارثة حقيقية في المستقبل. ظهر المصطلح وانتشر بين مهندسي البرمجيات بعد أن ذكره كينت بيك في كتابه: Refactoring: Improving the Design of Existing Code (بالعربية:إعادة الهيكلة: تحسين تصميم الكود الحالي) والذي يعتبر من أفضل الكتب في المجال لمهندسي البرمجيات ومطوري التطبيقات.
أحد الأمثلة الشهيرة على هذه الراوئح هي وجود دالة تحوي مئات الأسطر وربما تستقبل العديد من الوسائط، أو نجد كائن يقوم بعمل كل شيء God Object, أيضا كمثال آخر- دائما ما يقع فيه المطورين المبتدئين- هو وجود أجزاء مكررة في الكود.
لو نظرنا إلى هذه العلامات أو الروائح في الكود نجد أنها من الناحية التقنية ربما تكون صحيحة، لكن تكمن المشكلة في حالة تم تغيير متطلبات المشروع وكانت هناك حاجة إلى القيام بالتعديل على مثل هذه الأكواد أو إضافة خصائص وميزات جديدة.
ما يمكن أن نتوقعه في مثل هذه الحالات، هو أن سرعة تنفيذ هذه المتطلبات الجديدة ستكون بطيئة جدا وربما لن يتمكن المطور من تطبيقها أو في بعض الحالات سينتج عن تطبيقها العديد من الأخطاء البرمجية.