تله فرابرنامه نویسی سه تایی
TL;DR: از استفاده از عملگرهای سه تایی برای فراخوانی روش پویا خودداری کنید
مشکلات
- کاهش خوانایی کد
- افزایش سختی اشکال زدایی
- خطاهای احتمالی زمان اجرا
- کاهش قابلیت نگهداری
- مشکلات احتمالی بازسازی
- جریان برنامه مبهم
- مشکلات فرابرنامهنویسی
راه حل ها
- از شرط های صریح استفاده کنید
- الگوی استراتژی را اعمال کنید
- روش های توصیفی ایجاد کنید
زمینه
فرابرنامه نویسی سه تایی از عملگرهای شرطی برای انتخاب و فراخوانی متدها به صورت پویا استفاده می کند.
این منجر به کدهایی می شود که درک، اشکال زدایی و نگهداری آن سخت تر است.
شما در معرض خطر معرفی اشکالات ظریف و مبهم کردن کد خود برای توسعه دهندگان دیگر هستید.
Clean Code برعکس Clever Code است.
کد نمونه
اشتباه است
const method = success ? 'start' : 'stop';
obj[method]();
درسته
if (success) {
obj.start();
} else {
obj.stop();
}
تشخیص
لینترهای شما می توانند این بو را با جستجوی اپراتورهای سه تایی برای انتخاب نام روش تشخیص دهند، به خصوص هنگامی که با نماد براکت برای فراخوانی روش ترکیب می شود.
همچنین میتوانید متغیرهایی را که نام روشها را بر اساس شرایط ذخیره میکنند، تماشا کنید.
سطح
نسل هوش مصنوعی
تولیدکنندگان کد هوش مصنوعی ممکن است این بو را معرفی کنند زیرا اختصار کد را بر خوانایی اولویت می دهند.
آنها می توانند الگوهای فرابرنامه نویسی سه تایی را هنگام تلاش برای تولید کد مختصر ایجاد کنند.
تشخیص هوش مصنوعی
هوش مصنوعی…