این مقاله، با وجود اذعان به مفید بودن GitHub Copilot برای تولید کدهای boilerplate، نوشتن query/regex و راهحلهای سریع، چندین کاستی آن را برجسته میکند. نویسنده بر اهمیت تجربه توسعهدهنده در شناسایی خطاهای Copilot تأکید میکند.
کاستیهای کلیدی:
- آگاهی نادرست از API:
- API endpointهای خیالی را تصور میکند و آنها را با اطمینان ارائه میدهد.
- از endpointهای موجود استفاده نمیکند و ترجیح میدهد چرخ را از نو بسازد. این میتواند منجر به کدهای پر از اشکال شود که توسعهدهندگان را ملزم به بررسی مستندات API در کنار پیشنهادات Copilot میکند.
- راهحلها در تاریکی:
- وجود بررسیهای غیرضروری (مانند
typeof window !== undefined) در کد. - از ساختارهای داده APIها، میکروسرویسها یا سرویسهای شخص ثالث بیاطلاع است.
- سیستمهای طراحی موجود را نادیده میگیرد و اغلب بهجای اجزای خاص پروژه، اجزای عمومی را تولید میکند.
- کدهای ضعیف یا قدیمی:
- ممکن است متدهای منسوخشده (مانند
substr) را پیشنهاد کند. - در پیشنهاد ژنراتورهای UUID یا سایر کتابخانههای مرتبط برای ایجاد رشتههای منحصر بهفرد، ناکام است.
- از مقادیر منحصر بهفرد موجود در کد پایه، استفاده نمیکند.
- تستهای واحد ناقص:
- تستها، اغلب فاقد بررسیهای ضروری هستند (به عنوان مثال، بررسی وجود عنصر، قبل از بررسی ناپدید شدن آن).
- Mocks پیشنهاد میشوند بدون پیشنهادات مربوطه برای پاک کردن آنها.
مشاهده مطلب اصلی