چت هوش مصنوعی برای توسعهدهندگان
از ChatG به عنوان همکار برنامهنویس خود استفاده کنید: تحلیل کدهای ناآشنا، یافتن باگها، نوشتن تستها و مستندات، و یادگیری زبانهای جدید بر پایه مهارتهای قبلی.

برای توسعهدهندگان، چت هوش مصنوعی مثل یک اردک پلاستیکی سریع است که پاسخ هم میدهد: کدهای ناآشنا را میخواند، محل احتمالی باگ را حدس میزند، پیشنویس تستها را مینویسد و مستنداتی را تهیه میکند که هیچکس تمایلی به نوشتنشان ندارد. البته این ابزار جایگزین خواندن کد یا اجرای آن نمیشود. ChatG رایگان است و سهمیه روزانه برای پیامها دارد، کدها را در بلوکهای خوانا با دکمه کپی نمایش میدهد و تاریخچه شما را فقط در مرورگر خودتان ذخیره میکند. در ادامه، کاربردیترین شیوههای استفاده از آن به همراه پرامپتهایی آمده که میتوانید مستقیماً در چت باز کنید.
درک و اصلاح کد
تنها بخشهای مرتبط کد را قرار دهید و حتماً نسخهها، پیامهای خطا و کارهایی را که قبلاً امتحان کردهاید، ذکر کنید.
توضیح کدهای ناآشنا
ماژولی بدون کامنت تحویل گرفتهاید؟ از هوش مصنوعی بخواهید آن را توضیح دهد و سناریوهای خاص (Edge cases) نادیدهگرفتهشده را مشخص کند.
عملکرد این تابع [زبان برنامهنویسی] را در صورت لزوم خطبهخط توضیح بده. سپس مواردی که پوشش نداده (Edge cases) و مشکلات عملکردی احتمالی آن را فهرست کن: [کد را جایگذاری کنید]
این پرامپت را در چت امتحان کنید یا از دستیار کدنویسی استفاده کنید.
اشکالزدایی با اولویتبندی دلایل
درخواست بررسی دلایل به ترتیب احتمال و ارائه راهی برای تأیید هرکدام، حدس و گمان را به یک بررسی سریع و دقیق تبدیل میکند.
در پروژه [زبان یا فریمورک] خود با این خطا مواجه شدهام: [پیام خطا و stack trace را قرار دهید]. این هم کد مربوطه است: [کد را جایگذاری کنید]. علت احتمالی را توضیح بده، راهحلهای ممکن را به ترتیب از محتملترین مرتب کن و بگو برای اطمینان چه چیزی را لاگ کنم.
نوشتن تستهای واحد (Unit Tests)
تستنویسی گزینه بسیار مناسبی برای هوش مصنوعی است؛ چراکه میتوانید فوراً آنها را اجرا کرده و خطاها را ببینید.
با استفاده از [فریمورک تست]، برای تابع زیر تستهای واحد بنویس. حالت عادی، حالتهای خاص (ورودی خالی، ورودی بسیار بزرگ، انواع داده نامعتبر) و یک حالت شکست را پوشش بده. از نامهای توصیفی برای تستها استفاده کن: [تابع را جایگذاری کنید]
این پرامپت را در چت امتحان کنید.
بررسی مجدد تغییرات کد (Diff)
پیش از بررسی همکارانتان، اجازه دهید چت مشکلات واضح را شناسایی کند تا بررسی انسانی بتواند روی طراحی و معماری تمرکز کند.
این تغییرات کد را مانند یک توسعهدهنده ارشد [زبان برنامهنویسی] بررسی کن. باگها، مشکلات امنیتی و خوانایی کد را به ترتیب اهمیت مشخص کن. اصلاحات مشخصی پیشنهاد بده و بگو کدام موارد اختیاری هستند: [diff را جایگذاری کنید]
نوشتن کوئریها، مستندات و یادگیری مهارتهای جدید
چت برای کارهای جانبی برنامهنویسی که تمرکز شما را برهم میزنند نیز بسیار کاربردی است.
نوشتن کوئری SQL بر اساس شمای پایگاهداده
تعریف جداول (Schema) را به اشتراک بگذارید، نه دادهها را، و از هوش مصنوعی توضیحی بخواهید که بتوانید صحت آن را بررسی کنید.
یک کوئری [گویش SQL] بنویس که [نتیجه مورد نظر را شرح دهید] را از این جداول استخراج کند: [شمای جداول]. هر بخش (Clause) را بهطور خلاصه توضیح بده و ایندکسهایی را که به بهبود عملکرد کمک میکنند ذکر کن.
این پرامپت را در چت امتحان کنید.
نوشتن پیشنویس مستندات
مخاطب و ساختار را مشخص کنید تا یک بخش README آماده دریافت کنید که فقط نیاز به بررسی نهایی شما دارد.
یک بخش README برای [نام پروژه] بنویس که نحوه نصب، پیکربندی از طریق [روش پیکربندی] و یک نمونه کد حداقلی برای شروع را توضیح دهد. مخاطبان: توسعهدهندگانی که با [زبان برنامهنویسی] آشنا هستند اما پروژه را نمیشناسند. از تیترهای مارکداون و بلوکهای کد استفاده کن.
یادگیری یک زبان جدید بر پایه زبان قبلی
مقایسه کدهای دو زبان کنار هم به شما کمک میکند مباحث مقدماتی را رد کنید و مستقیماً تفاوتها را بیاموزید.
من به [زبان فعلی] مسلط هستم و در حال یادگیری [زبان جدید] هستم. نحوه معادلسازی این مفاهیم را نشان بده: [مفاهیم مورد نظر مانند مدیریت خطا، کدهای ناهمگام (async)، پکیجها]. از نمونه کدهای کوتاه در کنار هم استفاده کن و تلههای رایج برای کسی که از [زبان فعلی] آمده را گوشزد کن.
یادگیری را در چت شروع کنید، یا برای گفتگوی طولانیتر دستیار کدنویسی Coder را انتخاب کنید.
برنامهریزی بازنویسی کد (Refactor) در مراحل امن
بازنویسیهای بزرگ زمانی با شکست مواجه میشوند که کد روزها در حالت خرابی بماند. برنامهای بخواهید که در آن، بعد از هر مرحله کد همچنان کار کند.
قصد دارم [کامپوننت یا ماژول] را با هدف [هدف، مثلاً حذف آبجکت وضعیت عمومی (Global state)] بازنویسی کنم. ساختار فعلی این است: [توضیح دهید یا کد را بگذارید]. یک برنامه گامبهگام پیشنهاد بده که در آن کد بعد از هر مرحله همچنان کار کند و مشخص کن کدام تستها را باید ابتدا اضافه کنم.
نکاتی برای دریافت نتایج بهتر
- نسخهها و محدودیتها را مشخص کنید. نسخه زبان، فریمورک، محیط اجرا (Runtime) و محدودیتهایی مثل «عدم استفاده از کتابخانه جدید» پاسخ را کاملاً تغییر میدهند.
- نمونه کد حداقلی ارائه دهید. یک تکه کد کوچک که مشکل را بازتولید کند، از ارسال کل فایل بسیار بهتر است و مانع ورود کدهای اضافی به چت میشود.
- دلیل راهحل را بپرسید. جمله «توضیح بده چرا این راهحل کار میکند» به شما کمک میکند پاسخهای نادرست را سریعتر تشخیص دهید.
- نتیجه را بازخورد دهید. بعد از امتحان کردن راهحل، خطای جدید را در چت بفرستید؛ پاسخ بعدی معمولاً بسیار دقیقتر خواهد بود.
نبایدها
- ارسال اطلاعات حساس ممنوع است. کلیدهای API، رمزها، توکنها، کانکشن استرینگها، اطلاعات کاربران و محتوای فایلهای .env را حذف کنید. پیامها جهت تولید پاسخ به سرویس پردازش هوش مصنوعی ارسال میشوند.
- قوانین شرکت خود را نقض نکنید. بسیاری از شرکتها اشتراکگذاری کدها با سرویسهای هوش مصنوعی را محدود کردهاند. پیش از ارسال کدهای اختصاصی، این موارد را بررسی کنید.
- کدی را که نخواندهاید اجرا نکنید. کدهای تولیدشده ممکن است درست به نظر برسند اما فایلهای اشتباهی را حذف کنند یا اعتبارسنجیها را نادیده بگیرند. کد را بخوانید، در محیطی امن تست کنید و از درستی اجرای تستها مطمئن شوید.
- پکیجهای بررسینشده را نصب نکنید. هوش مصنوعی ممکن است کتابخانهها، توابع یا پارامترهایی را پیشنهاد دهد که وجود خارجی ندارند یا قدیمی هستند. پیش از نصب، نامها و متدها را در مستندات رسمی بررسی کنید.
- به مجوزها (License) دقت کنید. اگر به نظر میرسد بخشی از کد از پروژه خاصی کپی شده، منبع آن را بیابید و لایسنس مربوطه را بررسی کنید.
ابزارها، راهنماها و پرامپتهای مرتبط
- ابزار: دستیار کدنویسی برای توضیحات سریع، اصلاحات و تبدیل کدها.
- راهنماها: هوش مصنوعی برای کدنویسی، حریم خصوصی و امنیت هوش مصنوعی و چتباتهای هوش مصنوعی چگونه کار میکنند.
- مجموعه پرامپتها: پرامپتهای برنامهنویسی و پرامپتهای بهرهوری.
همهچیز برای شروع آماده است
چت را باز کنید و اولین سؤالتان را بپرسید. رایگان است و نیازی به نصب هیچ برنامهای نیست.
شروع گفتگو

