تصویر توسط والری نیکیتینا برای Unsplash+.
تصویر توسط والری نیکیتینا برای Unsplash+.

دستیارهای کدنویسی هوش مصنوعی چیستند و چگونه باید از آن‌ها استفاده کرد؟

در سال گذشته، نظرسنجی توسعه‌دهندگان استک اورفلو در سال ۲۰۲۴ (2024 Stack Overflow Developer Survey) گزارشی از استقبال جامعه توسعه از دستیارهای کدنویسی هوش مصنوعی ارائه داد. از بین بیش از ۱۷۰۰ پاسخ‌دهنده، ۷۶٪ اظهار داشتند که در حال استفاده از دستیارهای کدنویسی هوش مصنوعی هستند یا قصد استفاده از آن‌ها را دارند. به گفته گارتنر (Gartner)، "انتظار می‌رود تا سال ۲۰۲۸، ۹۰٪ از مهندسان نرم‌افزار سازمانی از دستیارهای کدنویسی هوش مصنوعی استفاده کنند، که این میزان افزایش قابل توجهی نسبت به کمتر از ۱۴٪ در اوایل سال ۲۰۲۴ دارد." ما معتقدیم که این افزایش بسیار زیاد است و تقریباً با نرخ رشد مرکب سالانه ۶۰٪ مطابقت دارد.

دستیارهای کدنویسی هوش مصنوعی چیستند؟

دستیارهای کدنویسی هوش مصنوعی، که به عنوان همراهان کدنویسی هوش مصنوعی نیز شناخته می‌شوند، ابزارهایی هستند که به توسعه‌دهندگان کمک می‌کنند تا نرم‌افزارها را تولید و تجزیه و تحلیل کنند. این دستیارها از مدل‌های زبانی بزرگ (LLM) استفاده می‌کنند که برای زبان‌های برنامه‌نویسی مانند جاوا (Java) و پایتون (Python) آموزش داده شده‌اند. توسعه‌دهندگان نرم‌افزار با استفاده از ترکیبی از زبان طبیعی و قطعه‌های کد، از دستیارهای کدنویسی هوش مصنوعی برای کمک در کارهای خود استفاده می‌کنند که منجر به بهره‌وری و کیفیت بالاتر، یادگیری و بینش‌های جدید و غیره می‌شود.

دستیارهای کدنویسی هوش مصنوعی اغلب در محیط‌های برنامه‌نویسی ترجیحی توسعه‌دهندگان، مانند مایکروسافت ویژوال استودیو کد (Microsoft Visual Studio Code) و جت‌برینز اینتلی‌جی آیدیا (JetBrains IntelliJ IDEA) ادغام می‌شوند و معمولاً قابلیت‌های زیر را دارند:

  • تولید قطعه‌های کد برای برآورده کردن درخواست یک توسعه‌دهنده.
  • ارتقاء کد قدیمی به نسخه جدیدتر.
  • ترجمه کد به زبان‌های مختلف.
  • توصیف یا توضیح کد برای تسهیل یادگیری.
  • تولید مستندات به عنوان بخشی از فرآیند DevOps.
  • ایجاد موارد آزمایشی و مصنوعاتی که چندین سناریو را پوشش می‌دهند.

آیا دستیارهای کدنویسی هوش مصنوعی می‌توانند بهره‌وری توسعه‌دهندگان را افزایش دهند؟

دستیارهای کدنویسی هوش مصنوعی با خلاصه کردن، توضیح دادن، پاسخ دادن و در نهایت واگذار کردن ایجاد کدهای تکراری و "لزوماً سرگرم‌کننده نبودن"، به بهبود کارایی توسعه‌دهندگان کمک می‌کنند. هر چه وظایف پیش پا افتاده‌تری که یک توسعه‌دهنده می‌تواند به یک دستیار هوش مصنوعی منتقل کند، زمان بیشتری برای انجام کارهای دیگر و با ارزش‌تر خواهد داشت.

میشل روزن (Michele Rosen)، مدیر تحقیقات IDC در زمینه فناوری‌های کم‌کد، بدون کد و فناوری‌های توسعه‌دهنده هوشمند، در مقدمه IDC Innovators: GenAI Coding Assistants, 2024 نوشت: "سازمان‌ها به طور فزاینده‌ای به دستیارهای کدنویسی GenAI [هوش مصنوعی مولد] روی می‌آورند تا به افزایش بهره‌وری توسعه‌دهندگان در بحبوحه کمبود مداوم استعدادهای فنی کمک کنند. توانایی این دستیارها در تولید، توضیح و مستندسازی کد، فرصتی را برای سازمان‌ها فراهم می‌کند تا توسعه راهکارهای دیجیتال را تسریع و ساده کنند."

تاثیر بالقوه قابل توجه است. گارتنر پیش‌بینی می‌کند که "تا سال ۲۰۲۸، پذیرش سیستماتیک دستیارهای کدنویسی هوش مصنوعی در سال ۲۰۲۳ منجر به حداقل ۳۶٪ رشد مرکب بهره‌وری توسعه‌دهندگان خواهد شد." به نظر ما، این رقم بسیار بالایی است.

آیا دستیارهای کدنویسی هوش مصنوعی می‌توانند رضایت توسعه‌دهندگان را افزایش دهند؟

تحقیقات نشان می‌دهد که بهره‌وری توسعه‌دهندگان بسیار بیشتر از صرفاً زمان صرف شده (یا صرفه‌جویی شده) برای نوشتن کد است. بهره‌وری یک فرد همچنین تحت تأثیر رضایت و رفاه او، توانایی او در برقراری ارتباط و همکاری موثر، و - به ویژه برای توسعه‌دهندگان - توانایی او در دستیابی و حفظ حالت تمرکز (flow state) است.

توسعه‌دهندگان می‌توانند از استفاده از دستیارهای کدنویسی هوش مصنوعی احساس رضایت کنند، زیرا آنها می‌توانند کارهای تکراری و غیر رضایت‌بخش مانند ایجاد بلوک‌های استاندارد کد و تولید مستندات روتین را حذف کنند. و تا حدی که این ابزارها می‌توانند از تغییر زمینه (context switching) جلوگیری کنند - زمانی که فردی قطع می‌شود یا نیاز به انجام کار دیگری دارد زیرا کار فعلی مسدود شده است - توسعه‌دهندگان می‌توانند در حالت تمرکز باقی بمانند و جریان فکری خود را حفظ کنند.

آیا دستیارهای کدنویسی هوش مصنوعی می‌توانند سودآوری یک سازمان را افزایش دهند؟

افزایش رضایت شغلی و حفظ کارکنان می‌تواند با به حداقل رساندن هزینه و اختلال ناشی از گردش مالی کارکنان، نتایج سازمانی را بهبود بخشد. توسعه‌دهندگان شادتر تمایل دارند بیشتر از افرادی که به اندازه کافی خوشحال نیستند، در مشاغل خود بمانند.

حفظ شغل هدیه‌ای است که مدام تکرار می‌شود. تیم‌ها دست‌نخورده باقی می‌مانند، مربیان درگیر می‌مانند و توسعه‌دهندگان جوان سازمان را به عنوان مکانی عالی برای یادگیری، ساخت و رشد مهارت‌های خود می‌بینند. توسعه‌دهندگان راضی‌تر، برنامه‌های با کیفیت بالاتری تولید می‌کنند که منجر به رضایت بیشتر مشتریان و در نهایت سود بالاتر با ریزش کمتر می‌شود. این یک چرخه فضیلت است که در آن همه برنده می‌شوند.

آیا اوراکل یک همراه کدنویسی هوش مصنوعی ارائه می‌دهد؟

در ماه مه ۲۰۲۴، ما از Oracle Code Assist، یک همراه کدنویسی هوش مصنوعی که برای کمک به مشتریان اوراکل و NetSuite در افزایش سرعت توسعه‌دهندگان و بهبود ثبات کد طراحی شده است، رونمایی کردیم. Oracle Code Assist در حال حاضر در مرحله بتا است و در ابتدا برای جاوا بهینه شده است. از طریق پلاگین‌هایی برای هر دو محیط توسعه‌دهنده Visual Studio Code و IntelliJ IDEA استفاده می‌شود. بازخورد کاربران مثبت است و ستایش ویژه‌ای مربوط به تولید تست‌های واحد، مستندات و توضیح کد قدیمی است.

درباره Oracle Code Assist یا سایر راهکارهای هوش مصنوعی مولد بیشتر بدانید.