آموزش و ترفند مک, نقد و بررسی محصولات فروشگاه

چطور با چت جی پی تی کد بنویسید و برنامه نویسی کنید

چطور با چت جی پی تی کد بنویسید و برنامه نویسی کنید
عناوین مطلب در یک نگاه بستن لیست

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

استفاده از ChatGPT به‌ویژه برای افرادی که به‌تازگی وارد دنیای برنامه‌نویسی شده‌اند مفید است، چراکه امکان تعامل با آن به زبان طبیعی وجود دارد و نتایج آن غالبا پاسخ‌های کاربردی و ساختاریافته ارائه می‌دهند. با این حال، مانند سایر ابزارهای مولد هوش مصنوعی، چت‌جی‌پی‌تی نیز بدون خطا نیست. یکی از مشکلات شناخته‌شده این مدل‌ها، پدیده‌ای تحت عنوان «توهم» (hallucination) است؛ یعنی تولید پاسخ‌هایی که با ورودی منطقی یا واقعی مرتبط نیستند. علت دقیق این پدیده هنوز به‌طور کامل مشخص نشده، اما اهمیت بررسی و ارزیابی خروجی‌های این ابزار پیش از استفاده نهایی را دوچندان می‌کند.

بنابراین، بهره‌گیری موثر از چت جی پی تی مستلزم تلفیق مهارت انسانی، دانش پایه‌ای برنامه‌نویسی و توانایی تنظیم پرامپت‌های دقیق و هدفمند است. برای استفاده از تمامی امکانات و بهره‌مندی از دقت بیشتر در پاسخ‌ها، توصیه می‌شود از خرید اکانت چت جی پی تی استفاده شود؛ در این مقاله از فراسیب به بررسی شیوه‌های اصولی استفاده از ChatGPT در کدنویسی می‌پردازیم و راهکارهایی برای افزایش کارایی این ابزار در فرآیند توسعه نرم‌افزار ارائه می‌دهیم.

کدنویسی با ChatGPT در مقایسه با سایر ابزارهای هوش مصنوعی

در دنیای امروز، ابزارهای هوش مصنوعی نقش مهمی در فرآیند توسعه نرم‌افزار ایفا می‌کنند؛ در حوزه کدنویسی، چندین ابزار پیشرفته به‌منظور تولید خودکار یا نیمه‌خودکار کد در دسترس قرار گرفته‌اند که هر یک ویژگی‌ها و کاربردهای خاص خود را دارند. از جمله این ابزارها می‌توان به GitHub Copilot، Amazon CodeWhisperer و Microsoft IntelliCode اشاره کرد. برخی از این ابزارها به‌صورت یکپارچه در محیط توسعه مجتمع (IDE) فعالیت می‌کنند و با بررسی زمینه کد یا نظرات موجود در فایل‌ها، پیشنهادهای هوشمندانه‌ای برای تکمیل کد ارائه می‌دهند. این پیشنهادها اغلب به‌صورت لحظه‌ای نمایش داده می‌شوند و به توسعه‌دهنده امکان می‌دهند تا کدنویسی را با سرعت و دقت بیشتری انجام دهد. در مقابل، برخی دیگر مانند ChatGPT مبتنی بر گفت‌وگو هستند و با دریافت پرامپت‌های متنی، پاسخ‌هایی ساختاریافته شامل کد، توضیح و تحلیل فنی ارائه می‌کنند.

شباهتی که بین همه این ابزارها وجود دارد، وابستگی عملکرد آن‌ها به کیفیت ورودی است؛ همان‌گونه که در ابزارهایی مانند Midjourney، خروجی تصویر به وضوح تحت تاثیر نوع و دقت دستور ورودی قرار دارد، در ابزارهای کدنویسی نیز نتایج حاصل از هوش مصنوعی تا حد زیادی به نحوه بیان درخواست‌ها بستگی دارد. شرکت OpenAI پیش از ChatGPT، مدل تخصصی‌تری به نام Codex معرفی کرده بود که از نسخه‌های GPT-3 منشا گرفته و تمرکز ویژه‌ای بر تولید کد داشت؛ با پیشرفت فناوری، این مدل جای خود را به مدل‌های گفتگو‌محور قدرتمندتری مانند GPT-4 داد که علاوه‌بر تولید کد، قابلیت‌های زبانی پیچیده‌تری را نیز ارائه می‌دهند.

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

نکته قابل توجه آن است که با یادگیری اصول نگارش پرامپت‌های دقیق، می‌توان از ChatGPT برای انجام طیف گسترده‌ای از پروژه‌ها، از تولید صفحات وب ساده گرفته تا طراحی اولیه اپلیکیشن‌های پیچیده نظیر برنامه‌های موبایل اندرویدی، استفاده کرد.

کدنویسی با ChatGPT

کدنویسی با ChatGPT

 

چت جی پی تی در کدام زبان برنامه‌نویسی بهترین عملکرد را دارد؟

مدل زبانی ChatGPT توانایی تولید کد در طیف گسترده‌ای از زبان‌های برنامه‌نویسی را دارد. این توانایی شامل زبان‌های سطح بالا و پایین می‌شود؛ از جمله زبان قدیمی اسمبلی که پیش از رواج زبان‌های سطح بالاتر و کاربرپسندتری نظیر C، ++C و Java کاربرد وسیعی داشت. با وجود این گستردگی، عملکرد چت‌جی‌پی‌تی در زبان‌هایی که منابع آموزشی و کدهای منبع‌باز فراوان دارند، به‌مراتب بهتر است. دلیل اصلی این امر، دسترسی مدل به حجم انبوهی از داده‌های آموزشی و نمونه‌کدهایی است که در روند آموزش آن مورد استفاده قرار گرفته‌اند. برای مثال، اگرچه تولید کد اسمبلی به‌صورت فنی امکان‌پذیر است، اما نتایج حاصل از آن اغلب کیفیت مطلوبی ندارند. بر اساس بررسی‌ها، زبان‌هایی که چت‌جی‌پی‌تی بیشترین دقت و کارایی را در آن‌ها از خود نشان می‌دهد، عبارت‌اند از:

  • Python (پایتون)
  • Java (جاوا)
  • JavaScript (جاوااسکریپت)
  • HTML و CSS
  • PHP (پی‌اچ‌پی)
  • SQL (اس‌کیوال)
  • C / C++ (سی و سی‌پلاس‌پلاس)
  • C# (سی‌شارپ)
  • Ruby (روبی)

در مقابل، عملکرد این مدل در زبان‌هایی با جامعه کاربری محدودتر یا منابع کمتری مانند VBA (Visual Basic for Applications) ضعیف‌تر است. VBA عمدتا در محیط‌های اداری و برای خودکارسازی در نرم‌افزارهایی مانند Microsoft Excel و Word استفاده می‌شود، اما به‌دلیل عدم استفاده گسترده در پروژه‌های متن‌باز، داده‌های آموزشی محدودتری دارد؛ در نتیجه، کدهای تولیدشده توسط چت‌جی‌پی‌تی در این زبان‌ها ممکن است نادرست یا ناکارآمد باشند.

با توجه به این موارد، انتخاب زبان برنامه‌نویسی برای استفاده از چت‌جی‌پی‌تی باید متناسب با هدف پروژه، سطح پشتیبانی ابزار و میزان منابع موجود در آن زبان انجام گیرد. برای بهره‌برداری حداکثری از توانایی این ابزار، توصیه می‌شود از زبان‌هایی استفاده شود که مستندات و نمونه‌های گسترده در جامعه متن‌باز دارند.

راهنمای گام‌به‌گام برای نوشتن کد با چت‌جی‌پی‌تی

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

  1. طراحی ابزار: تعریف هدف، عملکرد و ساختار کلی اپلیکیشن یا ابزار مورد نظر.
  2. انتخاب زبان برنامه‌نویسی: گزینش زبان مناسب برای توسعه کد بر اساس نوع پروژه، تجربه کاربر و نیازهای فنی.
  3. ارائه مشخصات به‌صورت یک پرامپت برای ChatGPT: نگارش دقیق و مرحله‌به‌مرحله درخواست‌ها برای هدایت چت‌جی‌پی‌تی در تولید کد مناسب.
  4. تست کدی که ChatGPT تولید می‌کند: بررسی و اجرای کد تولیدی در محیط‌های توسعه برای ارزیابی عملکرد اولیه.
  5. اشکال‌زدایی (دیباگ) با کمک ChatGPT: اصلاح خطاها، بهینه‌سازی کد و رفع مشکلات عملکردی از طریق تعامل پیوسته با مدل.

در ادامه، هر یک از این مراحل به‌صورت جداگانه و کامل مورد بررسی قرار خواهد گرفت تا تصویر دقیق‌تری از نحوه استفاده اصولی از ChatGPT برای کدنویسی به‌دست آید.

۱. طراحی ابزار

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

نقش چت جی پی تی در مرحله طراحی

چت جی پی تی تنها ابزاری برای نوشتن کد نیست؛ بلکه می‌توان از آن به‌عنوان یک مشاور فنی برای طراحی ساختار اولیه پروژه نیز استفاده کرد. در این مرحله، چت‌جی‌پی‌تی می‌تواند در پاسخ به پرسش‌هایی مانند «برای پیاده‌سازی این ابزار از چه فناوری‌هایی استفاده کنم؟»، «آیا این پروژه نیاز به پایگاه داده دارد؟» یا «کدام فریم‌ورک‌ها برای توسعه سریع‌تر مناسب هستند؟» راهنمایی‌های قابل توجهی ارائه دهد.

برای کاربران مبتدی، که ممکن است تجربه‌ای در تحلیل سیستم یا انتخاب پشته فناوری (Tech Stack) نداشته باشند، ChatGPT گزینه‌های مختلف را معرفی می‌کند و مزایا و معایب هر کدام را توضیح می‌دهد؛ این امر فرآیند تصمیم‌گیری را تسهیل کرده و باعث می‌شود طراحی ابزار با آگاهی بیشتری انجام گیرد.

پرسش‌وپاسخ هدفمند با چت جی پی تی

موثرترین روش برای بهره‌گیری از چت‌جی‌پی‌تی در این مرحله، مکالمه هدفمند و مرحله‌به‌مرحله با آن است؛ کاربر باید نیاز خود را به‌صورت ساده اما مشخص بیان کند تا مدل بتواند مناسب‌ترین راهکارها را ارائه دهد.

نمونه پرامپت:

«می‌خواهم یک اپلیکیشن موبایل طراحی کنم که کاربران بتوانند هزینه‌های روزانه خود را ثبت و دسته‌بندی کنند. چه زبان برنامه‌نویسی یا فریم‌ورکی برای این کار مناسب است؟»

در پاسخ به چنین پرامپتی، ChatGPT معمولا گزینه‌هایی مانند Flutter، React Native، Swift یا Kotlin را پیشنهاد می‌دهد و دلیل مناسب بودن هرکدام را توضیح می‌دهد. این اطلاعات به کاربر کمک می‌کند تا زبان یا پلتفرم مناسب را انتخاب کرده و فرآیند طراحی را با دید روشن‌تری آغاز کند.

طراحی ابزار با چت جی پی تی

طراحی ابزار با چت جی پی تی

 

محدودیت‌های چت جی پی تی در طراحی

با وجود مزایای متعدد، باید توجه داشت که دانش چت‌جی‌پی‌تی محدودیت زمانی دارد. به‌عنوان نمونه، در تاریخ سپتامبر 2021، ChatGPT ممکن است فریم‌ورک Xamarin را برای توسعه اپلیکیشن موبایل کراس‌پلتفرم پیشنهاد دهد؛ در حالی که این فریم‌ورک اکنون با فناوری جدیدتر و قدرتمندتری مانند .NET MAUI جایگزین شده است.

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

اهمیت تعامل فعال با مدل

در صورتی که پاسخ‌های دریافتی از چت‌جی‌پی‌تی سطحی، تکراری یا نامربوط باشند، باید پرامپت‌ها بازنویسی و دقیق‌تر شوند. هم‌چنین جست‌وجوی هم‌زمان در منابع تخصصی مانند Stack Overflow یا مستندات رسمی فریم‌ورک‌ها، به غنای فرآیند طراحی کمک می‌کند.

۲. انتخاب زبان برنامه‌نویسی

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

تفاوت نیازها برای کاربران مبتدی و حرفه‌ای

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

  • سادگی سینتکس و خوانایی بالا
  • نصب و راه‌اندازی آسان روی سیستم‌عامل‌های مختلف
  • عدم نیاز به پیکربندی پیچیده یا وابستگی به فایل‌های جانبی متعدد

پایتون؛ زبان پیشنهادی برای شروع

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

  • پشتیبانی گسترده در زمینه هوش مصنوعی و یادگیری ماشین
  • کتابخانه‌های قوی مانند TensorFlow، NumPy، Pandas و spaCy
  • قابلیت اجرای سریع اسکریپت‌ها بدون نیاز به کامپایلر پیچیده
  • محیط‌های توسعه کاربرپسند نظیر Jupyter Notebook و VS Code

نحوه راه‌اندازی پایتون

برای شروع کار با پایتون، کافی است مراحل زیر دنبال شود:

  1. دانلود و نصب Visual Studio Code از وب‌سایت رسمی
  2. نصب پایتون از سایتorg یا از طریق Windows Store
  3. افزودن افزونه Python Extension در محیط VS Code برای پشتیبانی کامل از کدنویسی، تکمیل خودکار، اجرای مستقیم اسکریپت و دیباگینگ

با انجام این مراحل، محیطی ساده و کارآمد برای نوشتن و اجرای اولین کدها فراهم خواهد شد.

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

۳. ارائه مشخصات به‌صورت پرامپت برای ChatGPT

توانایی ChatGPT در تولید کد تا حد زیادی وابسته به دقت و ساختار پرامپتی است که دریافت می‌کند؛ در این مرحله، باید نیازمندی‌های پروژه یا ابزار موردنظر به‌صورت واضح، مرحله‌به‌مرحله و منطقی به مدل منتقل شود. این کار از طریق نگارش پرامپت‌های دقیق انجام می‌شود که فرایندها را به زبان ساده اما جزئی‌نگر توصیف می‌کنند.

اهمیت ساختار مرحله‌به‌مرحله

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

نمونه کاربردی: کاهش حجم تصاویر

به‌عنوان یک مثال عملی، در نظر گرفته می‌شود که کاربر قصد دارد یک ابزار ساده در پایتون برای کاهش حجم تصاویر طراحی کند. این ابزار باید تصاویر موجود در یک پوشه را بررسی کرده، فرمت آن‌ها را مشخص نماید و در صورت بزرگ‌تر بودن حجم از 1 مگابایت، آن‌ها را کاهش داده و در یک پوشه جداگانه ذخیره کند.

پرامپت پیشنهادی:

«یک اسکریپت پایتون بنویس که فایل‌های یک پوشه را بررسی کند. اگر فایل JPG یا PNG بود، حجم آن را بررسی کن. اگر بیشتر از 1 مگابایت بود، حجم تصویر را کاهش بده و در پوشه‌ای به نام “Reduced” ذخیره کن. اگر کمتر از 1 مگابایت بود، بدون تغییر آن را در همان پوشه ذخیره کن. از کاربر بپرس که کدام پوشه را باید بررسی کند.»

این پرامپت شامل موارد زیر است:

  • تعیین وظیفه: بررسی و پردازش فایل‌ها
  • شرط اول: فرمت فایل
  • شرط دوم: حجم فایل
  • اقدام متناسب با شرایط
  • تعامل با کاربر برای انتخاب پوشه
ارائه مشخصات به‌صورت پرامپت برای ChatGPT

ارائه مشخصات به‌صورت پرامپت برای ChatGPT

 

نکات کلیدی در نوشتن پرامپت

  1. ساده‌سازی زبان: استفاده از جملات کوتاه و مستقیم باعث درک بهتر مدل می‌شود.
  2. ساختار منطقی: ترتیب گام‌ها باید طبیعی و از بالا به پایین باشد (اول بررسی، بعد پردازش).
  3. جلوگیری از ریسک تخریب داده‌ها: درخواست ذخیره فایل‌های جدید در یک پوشه جداگانه (مانند “Reduced”) از اقدامات مهم محافظتی است که باید در پرامپت لحاظ شود.

نتیجه: تولید اسکریپت پیشنهادی

پس از ارائه پرامپت، ChatGPT معمولا با ذکر پیش‌نیازها آغاز می‌کند؛ مانند نصب کتابخانه Pillow که برای پردازش تصویر در پایتون استفاده می‌شود. چت‌جی‌پی‌تی هم‌چنین دستور نصب را ارائه می‌دهد:

pip install Pillow

 

pip install Pillow

pip install Pillow

 

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

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

۴. تست کدی که ChatGPT تولید می‌کند

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

بررسی اولیه پیش از اجرا

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

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

نمونه‌ای از خطای عملکردی رایج

در مثال مورد استفاده، چت‌جی‌پی‌تی اسکریپتی تولید کرده است که تصاویر بزرگ‌تر از 1 مگابایت را تغییر اندازه داده و در پوشه‌ای جداگانه ذخیره می‌کند. اما یک ایراد مهم در این کد دیده می‌شود: استفاده از دستور زیر برای کاهش اندازه تصویر:

image.thumbnail((800, 800))

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

reduce images code terminal output

reduce images code terminal output

 

نحوه اجرای کد

برای تست عملکرد کد، مراحل زیر باید طی شود:

  1. باز کردن نرم‌افزار Visual Studio Code
  2. ایجاد فایل جدید با پسوند .py و کپی کردن کد تولیدی در آن
  3. دانلود چند تصویر آزمایشی از سایت‌هایی مانند Unsplash یا Pixabay
  4. ذخیره تصاویر در یک پوشه مشخص
  5. فشار دادن کلید F5 (در ویندوز) یا استفاده از مسیر Run → Start Debugging (در مک یا لینوکس) برای اجرای کد
  6. وارد کردن مسیر پوشه حاوی تصاویر در ترمینال باز شده در پایین VS Code

پس از اجرا، اسکریپت فایل‌ها را پردازش می‌کند و تصاویر فشرده‌شده را در پوشه جدیدی به نام “Reduced” ذخیره می‌نماید.

reduced images too small

reduced images too small

 

تحلیل خروجی

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

۵. اشکال‌زدایی (Debug) خطاها با استفاده از ChatGPT تا زمانی که کد کار کند

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

ChatGPT reduce image optimize code

ChatGPT reduce image optimize code

 

نقش تجربه برنامه‌نویسی در اشکال‌زدایی

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

بررسی مشکل در کد اولیه

در مثال پیشین، اسکریپت تولیدشده تصاویر بزرگ‌تر از 1 مگابایت را بدون تحلیل دقیق، به ابعاد 800×800 پیکسل کاهش می‌داد. این رویکرد ساده، اگرچه از نظر فنی «کار می‌کرد»، اما منجر به تولید تصاویری با ابعاد بسیار کوچک و در بسیاری موارد، کیفیت غیرقابل قبول می‌شد.

کد معیوب:

image.thumbnail((800, 800))

پرامپت اصلاحی اول: تغییر در استراتژی فشرده‌سازی

با ارائه پرامپت زیر به ChatGPT، مدل سعی کرد مشکل را برطرف کند:

«کد تصاویری تولید کرد که بیش از حد کوچک هستند. آن را بهبود بده طوری که تصاویر کاهش‌یافته، حداکثر ۱۰٪ کوچکتر از ۱ مگابایت باشند.»

نتیجه: ChatGPT کدی تولید کرد که با کاهش تدریجی کیفیت (quality) تصویر، سعی می‌کرد به حجم هدف برسد، بدون آن‌که ابعاد را تغییر دهد. این روش گرچه متفاوت بود، اما در عمل کیفیت تصویر را به‌شدت کاهش می‌داد؛ گاه تا ۱۰٪، که موجب افت شدید بصری می‌شد.

ضعف‌های موجود در کد پیشنهادی

  • کیفیت تصاویر به‌شکل افراطی کاهش می‌یافت
  • رزولوشن (DPI) تصویر نادیده گرفته می‌شد
  • هیچ الگوریتمی برای یافتن تعادل بین ابعاد و کیفیت وجود نداشت
  • از تصویر اصلی فقط یک بار استفاده می‌شد، بدون بازیابی داده‌ها برای تکرار بهینه‌سازی

یکی از راهکارهای ساده برای بهبود عملکرد چنین کدی، بررسی رزولوشن تصویر است؛ بسیاری از تصاویر دیجیتال به‌طور پیش‌فرض با DPI بالا ذخیره می‌شوند (برای چاپ ۳۰۰DPI)، در حالی‌که برای نمایش روی صفحات دیجیتال تنها ۷۲DPI کافی است. کاهش این مقدار یکی از سریع‌ترین روش‌ها برای کم کردن حجم فایل بدون کاهش شدید کیفیت است.

راهکار نهایی با پرامپت دقیق‌تر

پرامپت تکمیلی زیر به ChatGPT داده شد تا کد اصلاح شود:

«کد را به شکل زیر اصلاح کن:

  • کیفیت تصویر را کمتر از ۹۰٪ کاهش نده.
  • ابتدا ابعاد تصویر را به 800×800 کاهش بده و به‌صورت موقتی ذخیره کن.
  • اندازه فایل موقتی را بررسی کن.
  • اگر حجم فایل کمتر از ۱۰٪ از ۱ مگابایت بود، ابعاد را ۱۰٪ افزایش بده. اما تصویر موقتی را بزرگ نکن؛ تصویر اصلی را دوباره با ابعاد جدید پردازش کن.»

نتیجه نهایی: ChatGPT با این ورودی دقیق توانست الگوریتمی هوشمندانه‌ طراحی کند که کاهش حجم را با حفظ کیفیت و انعطاف در ابعاد ترکیب کرده و فایل‌هایی با حجم مناسب و کیفیت قابل‌قبول تولید نماید.

image reduction example

image reduction example

 

جمع‌بندی مرحله اشکال‌زدایی

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

نکاتی از سوی حرفه‌ای‌هایی که از ChatGPT برای نوشتن کد استفاده می‌کنند

تجربه کاربران حرفه‌ای و نیمه‌حرفه‌ای در تعامل با ChatGPT نشان می‌دهد که این ابزار در زمینه‌های مختلف توسعه نرم‌افزار، از ویرایش ساده قالب وب‌سایت‌ها تا تدوین مشخصات فنی پروژه‌های پیچیده، بسیار سودمند hsj. در ادامه، دو نمونه از تجربه‌های عملی کاربران در استفاده از ChatGPT ارائه شده است:

استفاده از چت جی پی تی برای کار روی کدهای موجود

نیکولاس دراگولئا، نویسنده و مدیر وب‌سایت سلامت حیوانات Fetched، یکی از کاربران مبتدی است که از چت جی پی تی برای توسعه و ویرایش قالب وردپرس خود استفاده می‌کند. او با بهره‌گیری از قابلیت تولید کدهای HTML و CSS، موفق شده است ظاهر سایت خود را بدون دانش عمیق برنامه‌نویسی شخصی‌سازی کند.

او می‌گوید:

«ChatGPT برای یک فرد مبتدی مثل من فوق‌العاده مفید است، چون می‌توانم چیزی را با زبان ساده بیان کنم و چت جی پی تی آن را می‌فهمد و کد موردنیاز را تحویلم می‌دهد. پیش از این، باید برای هر مورد در گوگل جست‌وجو می‌کردم و موضوعات را در ردیت یا Stack Overflow بررسی می‌کردم. اکنون با استفاده از هوش مصنوعی، در ویرایش و شخصی‌سازی سایت کسب‌وکارم بسیار کارآمدتر شده‌ام.»

این مثال نشان می‌دهد که ChatGPT به عنوان یک ابزار سریع و تعاملی می‌تواند جایگزین فرآیندهای سنتی جست‌وجو و بررسی منابع شود، به‌ویژه برای افرادی که به‌تازگی وارد دنیای توسعه وب شده‌اند.

گفت‌وگو با ChatGPT برای تنظیم دقیق مشخصات فنی (Software Spec)

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

او توضیح می‌دهد:

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

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

او می‌افزاید:

«وقتی مطمئن شدم که یک دستورالعمل نسبتا کامل دارم، از ChatGPT می‌خواهم شروع به نوشتن اسکریپت کند. GPT-4 برای این کار بسیار مناسب است. هم‌چنین از آن می‌خواهم مستندات فنی و تست‌های واحد (unit tests) را نیز تولید کند.»

بوید تاکید می‌کند که کد تولیدی چت‌جی‌پی‌تی به هیچ‌وجه آماده استفاده در محیط‌های عملیاتی (production) نیست و نیاز به بازبینی انسانی دارد، اما به‌عنوان نقطه شروع برای توسعه بسیار ارزشمند است.

جمع‌بندی تجربه‌های عملی

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

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

همکاری با متخصصان برای توسعه پروژه‌های مبتنی بر چت جی پی تی

اگرچه ChatGPT ابزار توانمندی برای تولید کد، طراحی الگوریتم‌های اولیه و تدوین مستندات فنی است، اما برای رسیدن به نسخه نهایی و قابل‌اعتماد، در بسیاری از موارد به تجربه و تخصص انسانی نیاز است. استفاده از هوش مصنوعی به‌تنهایی، به‌ویژه در پروژه‌های حساس یا تجاری، نمی‌تواند جایگزین کاملی برای برنامه‌نویسان حرفه‌ای باشد. در مواردی مانند توسعه چت‌بات، طراحی API سفارشی، پیاده‌سازی پردازش زبان طبیعی (NLP) یا ساخت سیستم‌های هوشمند، همکاری با برنامه‌نویسان متخصص کیفیت خروجی را به‌طور قابل‌توجهی افزایش می‌دهد. این همکاری به‌ویژه در مراحل پایانی پروژه نظیر بازبینی کد، امنیت، بهینه‌سازی عملکرد و تست‌های پیش از عرضه، نقشی حیاتی دارد.

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

جمع‌بندی نهایی: هم‌افزایی هوش مصنوعی و انسان در مسیر کدنویسی نوین

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

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

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

سوالات متداول درباره کدنویسی با چت جی پی تی

۱. آیا چت جی پی تی می‌تواند به‌طور کامل جایگزین برنامه‌نویس شود؟

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

۲. چت جی پی تی از چه زبان‌های برنامه‌نویسی پشتیبانی می‌کند؟

ChatGPT از زبان‌های مختلفی پشتیبانی می‌کند، از جمله: Python، JavaScript، Java، C/C++، C#، PHP، HTML/CSS، SQL و Ruby. عملکرد آن در زبان‌های محبوب و دارای منابع متنی زیاد، مانند پایتون، دقیق‌تر و قابل‌اعتمادتر است.

۳. آیا کدی که چت جی پی تی می‌نویسد همیشه بدون خطا اجرا می‌شود؟

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

۴. آیا استفاده از چت جی پی تی برای آموزش برنامه‌نویسی مفید است؟

بله. چت جی پی تی ابزاری عالی برای یادگیری مفاهیم پایه، دریافت مثال‌های عملی و درک ساختارهای کدنویسی است. با قابلیت پاسخ‌گویی تعاملی، می‌تواند فرآیند یادگیری را تسریع کند؛ به‌ویژه برای مبتدیان.

۵. آیا می‌توان از چت جی پی تی برای تولید پروژه‌های کامل استفاده کرد؟

چت جی پی تی می‌تواند بخش زیادی از کدهای یک پروژه را تولید کند، اما همچنان برای طراحی ساختار کلی، پیاده‌سازی دقیق، تست امنیت و عملکرد نهایی، به دانش و بررسی انسانی نیاز است.

۶. چه نکاتی را باید هنگام نوشتن پرامپت برای کدنویسی با چت جی پی تی رعایت کرد؟

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

۷. آیا چت جی پی تی توانایی درک ساختار پروژه‌های بزرگ را دارد؟

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

۸. چگونه می‌توان مطمئن شد که کد تولیدشده توسط چت جی پی تی قابل‌اعتماد است؟

با انجام این اقدامات:

  • اجرای تست‌های محلی و واحد (unit tests)
  • بررسی دقیق منطق کد
  • مقایسه با منابع معتبر
  • مشورت با توسعه‌دهندگان متخصص یا استفاده از خدمات بازبینی کد
اشتراک اپل آرکید

اشتراک اپل آرکید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دو × 3 =