این مقاله نحوهی استفاده از GitHub Copilot را برای نوشتن کد #C حرفهای، نشان میدهد و بر بهبود کیفیت کد و ایجاد تستهای واحد قوی تمرکز دارد. این مقاله از الگوریتم مرتبسازی حبابی به عنوان مثال استفاده میکند.
تولید اولیه کد و اصلاح آن
- نویسنده از Copilot میخواهد که یک تابع مرتبسازی حبابی را در #C تولید کند.
- در حالیکه کد اولیه کاربردی است، فاقد مدولار بودن و خوانایی است.
- سپس نویسنده از Copilot میخواهد که "تابع BubbleSort را برای کاهش پیچیدگی حلقهای تقسیم کند"، که منجر به نسخهای مدولارتر و تمیزتر با توابع کمکی
PerformSinglePass و Swap میشود.
تست واحد و بهبود آن
- سپس نویسنده از Copilot میخواهد که یک تست واحد را برای تابع
BubbleSort با استفاده از NUnit ایجاد کند. - تست اولیه کاربردی است اما میتوان آن را بهبود بخشید.
- سپس نویسنده از Copilot میخواهد که تست را با استفاده از
TestCase برای دادههای آزمایشی متعدد بازنویسی کند، که باعث میشود تست جامعتر شود. - در نهایت، نویسنده از Copilot میخواهد که تست را با استفاده از
TestCaseSource بازنویسی کند تا دادههای آزمایشی را به یک تابع جداگانه (BubbleSortTestCases) منتقل کند، که سازماندهی و نگهداری را بیشتر بهبود میبخشد.
نکات کلیدی
- GitHub Copilot میتواند ابزاری قدرتمند برای تولید کد باشد، اما اصلاح و بهبود کد تولید شده برای رسیدن به استانداردهای حرفهای ضروری است.
- مدولار کردن کد و کاهش پیچیدگی حلقهای منجر به خوانایی و نگهداری بهتر میشود.
- نوشتن تستهای واحد جامع با موارد آزمایشی متعدد برای اطمینان از صحت کد ضروری است.
- استفاده از ویژگیهایی مانند
TestCase و TestCaseSource در NUnit میتواند به طور قابل توجهی سازماندهی و نگهداری تستهای واحد را بهبود بخشد. - توسعهدهندگان باید از Copilot به عنوان ابزاری برای کمک به خود استفاده کنند، نه اینکه کاملاً به آن وابسته باشند و باید به توسعه مهارتهای کدنویسی خود ادامه دهند.
مشاهده مطلب اصلی