سه Java Champion چگونه با GitHub Copilot بهره‌وری را افزایش می‌دهند

سه Java Champion چگونه با GitHub Copilot بهره‌وری را افزایش می‌دهند

آنچه در این مقاله مطالعه می‌کنید:

۳ آبان ۱۴۰۵

۳ آبان ۱۴۰۵

به گزارش GitHub Blog، سه متخصص باسابقه و دارنده عنوان Java Champion تجربه خود از به‌کارگیری GitHub Copilot در پروژه‌های واقعی و متن‌باز را تشریح کرده‌اند. روایت‌های Vlad Mihalcea، Patrick Baumgartner و Frank Delporte نشان می‌دهد سرعت بیشتر زمانی به نتیجه قابل اتکا می‌رسد که توسعه‌دهنده همچنان مسئول تعریف مسئله، بررسی خروجی و تأیید نهایی کد باشد.

از ساخت نمونه اولیه تا مهاجرت و رفع باگ

Vlad Mihalcea از Copilot در IntelliJ IDEA برای تحلیل، طراحی و پیاده‌سازی قابلیت‌های Hypersistence Utils و Hypersistence Optimizer استفاده می‌کند. او می‌گوید ساخت برنامه‌ای برای نمایش تاریخچه رویدادهای Optimizer که پیش‌تر ممکن بود چند هفته زمان ببرد، با کمک این ابزار در دو روز انجام شد. با این حال، طرح و کد تولیدشده همچنان به‌صورت انسانی بازبینی می‌شود. او همچنین مهارت‌هایی سفارشی ساخته است تا خروجی مستندات با لحن و اصول فنی نوشته‌های قبلی‌اش هماهنگ باشد.

Patrick Baumgartner نمونه‌ای از مهاجرت حدود ۹۰۰ اسلاید آموزشی در ۱۵ ارائه از Reveal.js به Marp را مطرح کرده است. این کار به‌جای یک هفته یا بیشتر، حدود ۸ تا ۱۰ ساعت طول کشید؛ اما مقایسه اسکرین‌شات‌ها، انیمیشن‌ها و فایل‌های PDF بخش مهم فرایند بود. او در نمونه‌ای دیگر، طی سفری حدوداً چهار ساعته و با هدایت عامل کدنویسی از تلفن همراه، یک افزونه Maven همراه با خط CI، آزمون‌های عملکرد و گزارش‌های ارزیابی ساخت.

Frank Delporte نیز Copilot را برای بررسی pull requestها و گزارش‌های باگ به کار می‌گیرد. در یکی از موارد مربوط به کتابخانه Pi4J، عامل کدنویسی طی حدود نیم ساعت علت کارنکردن دکمه ورودی پنجم روی Raspberry Pi 4 را شناسایی کرد. مشکل به اشغال چهار carrier thread به‌وسیله فراخوانی‌های native مسدودکننده مربوط بود؛ تشخیصی که در ادامه با توضیح فنی، اصلاح پیشنهادی و بازبینی نگه‌دارندگان همراه شد.

سرعت بدون واگذاری مسئولیت

جمع‌بندی مشترک این سه تجربه، دادن زمینه دقیق به ابزار، مشخص‌کردن نقطه شروع، تدوین برنامه و تعریف معیارهای قابل سنجش برای پایان کار است. آزمون، بررسی معماری، کنترل مستندات و بازبینی کد باید شواهد درستی خروجی را فراهم کنند؛ صرف اعلام تکمیل کار از سوی عامل کافی نیست.

این تجربه‌ها برای تیم‌های توسعه نرم‌افزار نشان می‌دهد GitHub Copilot می‌تواند اجرای کارهای زمان‌بر، نمونه‌سازی و عیب‌یابی را سریع‌تر کند، اما درک نیاز محصول، تصمیم‌های معماری و مسئولیت کدی که منتشر می‌شود همچنان بر عهده انسان باقی می‌ماند.