কোডিং প্রম্পট
প্রতিদিনের প্রোগ্রামিং কাজের প্রম্পট: যেকোনো ভাষার কোড ব্যাখ্যা, ডিবাগিং, টেস্টিং, রিফ্যাক্টরিং, রিভিউ ও ডকুমেন্টিং।
এই কোডিং প্রম্পটগুলো সাধারণ কোনো ডেমোর জন্য নয়, বরং বাস্তব প্রজেক্টের কাজের জন্য তৈরি। এর মধ্যে রয়েছে অপরিচিত কোড বোঝা, সম্ভাব্য কারণ চিহ্নিত করে ডিবাগিং, ইউনিট টেস্ট তৈরি, রিফ্যাক্টরিং, ডিফের (diff) রিভিউ, SQL, রেগুলার এক্সপ্রেশন, Git-এর সমস্যা সমাধান, সিকিউরিটি অডিট, ডকুমেন্টেশন ও ছোটখাটো স্ক্রিপ্ট। এগুলোর বেশিরভাগই যেকোনো ভাষায় ব্যবহারযোগ্য: [বর্গাকার বন্ধনীতে] প্রয়োজনীয় ল্যাঙ্গুয়েজ, ফ্রেমওয়ার্ক বা টুল উল্লেখ করুন এবং প্রম্পটের নির্দেশিত জায়গায় আপনার কোড পেস্ট করুন। পুরো ফাইলের চেয়ে ছোট ও সুনির্দিষ্ট কোড স্নিপেট দিলে তুলনামূলক ভালো আউটপুট পাওয়া যায়।
প্রতিটি প্রম্পট এমনভাবে তৈরি যাতে প্রাপ্ত আউটপুট আপনি সহজেই যাচাই করে নিতে পারেন। টেস্টগুলো রান করা যায়, ব্যাখ্যাগুলো কোডের সাথে মিলিয়ে নেওয়া যায় এবং সমাধানের পেছনে যুক্তিও উল্লেখ থাকে। ফলে কোনো ভুল উত্তর থাকলে তা সহজেই ধরা পড়ে—কারণ AI মাঝে মাঝে এমন কোড তৈরি করে যা দেখতে সঠিক মনে হলেও এজ কেসে (edge case) কাজ করে না বা অস্তিত্বহীন ফাংশন ব্যবহার করে। প্রম্পটটি আপনার এডিটর বা নোটে নিতে ‘Copy’ ব্যবহার করুন, অথবা ChatG-তে সরাসরি খুলতে "Use in chat"-এ ক্লিক করুন—যেখানে কোড হাইলাইটেড ব্লকে কপি বাটনসহ প্রদর্শিত হয়।
কোড পেস্ট করার আগে অবশ্যই API কি, পাসওয়ার্ড, টোকেন ও গ্রাহকের সংবেদনশীল তথ্য সরিয়ে নিন; এবং বাইরের AI সার্ভিসে কোড শেয়ার করার ক্ষেত্রে আপনার প্রতিষ্ঠানের অনুমতি রয়েছে কিনা তা নিশ্চিত করুন। একক কোনো প্রশ্নের জন্য Code Assistant আরও দ্রুত কাজ করে। বিভিন্ন ওয়ার্কফ্লো ও সীমাবদ্ধতা বিস্তারিত জানতে পড়ুন AI for coding এবং ChatG for developers।
প্রম্পটগুলো কীভাবে নিজের মতো সাজিয়ে নেবেন
- ভার্সন ও সীমাবদ্ধতা উল্লেখ করুন: ল্যাঙ্গুয়েজ ভার্সন, ফ্রেমওয়ার্ক, রানটাইম এবং "no new dependencies"-এর মতো শর্ত।
- ইনপুট ছোট রাখুন: সমস্যাটি সঠিকভাবে তুলে ধরে এমন একটি সংক্ষিপ্ত ও ন্যূনতম কোড উদাহরণ দিন।
- ফলাফল আবার পেস্ট করুন: কোনো সমাধান চেষ্টা করার পর নতুন কোনো এরর এলে তা আবার দিন এবং পরবর্তী করণীয় জানতে চান।
- সুনির্দিষ্ট ফরম্যাটে আউটপুট চান: যেমন কোনো ডিফ (diff), একটি নির্দিষ্ট ফাংশন কিংবা বিভিন্ন অপশনের তালিকা।
জেনারেট করা কোড রান করার আগে সবসময় ভালো করে পড়ে নিন এবং প্রথমে কোনো নিরাপদ পরিবেশে টেস্ট করুন।
-
01
সিনিয়র ইঞ্জিনিয়ারের মতো কোড ব্যাখ্যা
আপনি একজন সিনিয়র [প্রোগ্রামিং ল্যাঙ্গুয়েজ] ইঞ্জিনিয়ার, যিনি একজন জুনিয়র ডেভেলপারকে মেন্টরিং করছেন। নিচের কোডটি ধাপে ধাপে কী কাজ করে তা ব্যাখ্যা করুন। এরপর অস্বাভাবিক, ঝুঁকিপূর্ণ বা রিফ্যাক্টর করার মতো বিষয়গুলো চিহ্নিত করুন। কোড: [কোড পেস্ট করুন]
-
02
সম্ভাব্য কারণ অনুযায়ী এরর ডিবাগিং
আমার [ল্যাঙ্গুয়েজ বা ফ্রেমওয়ার্ক] কোডে এই এররটি আসছে: [এরর এবং স্ট্যাক ট্রেস পেস্ট করুন]। সংশ্লিষ্ট কোডটি এখানে রয়েছে: [কোড পেস্ট করুন]। ক্রমানুসারে সবচেয়ে সম্ভাব্য তিনটি কারণের তালিকা দিন, প্রতিটি কীভাবে নিশ্চিত করা যায় তা বলুন এবং শীর্ষ কারণটির সমাধান দিন।
-
03
এজ কেসসহ ইউনিট টেস্ট
নিচের ফাংশনটির জন্য [টেস্টিং ফ্রেমওয়ার্ক] দিয়ে ইউনিট টেস্ট লিখুন। সাধারণ ইনপুট, বাউন্ডারি ভ্যালু, খালি বা নাল ইনপুট এবং ভুল ডেটা টাইপ কভার করুন। প্রতিটি টেস্টের নাম তার যাচাই করা আচরণের ওপর ভিত্তি করে দিন। ফাংশন: [ফাংশন পেস্ট করুন]
-
04
আচরণ অপরিবর্তিত রেখে রিফ্যাক্টরিং
আচরণ পরিবর্তন না করে কোডটি আরও পাঠযোগ্য ও সহজে রক্ষণাবেক্ষণযোগ্য করতে এই [প্রোগ্রামিং ল্যাঙ্গুয়েজ] কোড রিফ্যাক্টর করুন। স্পষ্ট নাম, ছোট ফাংশন এবং কম ডুপ্লিকেশন ব্যবহার করুন এবং পাবলিক ইন্টারফেস অপরিবর্তিত রাখুন। প্রতিটি পরিবর্তন সংক্ষেপে ব্যাখ্যা করুন। কোড: [কোড পেস্ট করুন]
-
05
গুরুত্ব অনুযায়ী পুল রিকোয়েস্ট রিভিউ
একজন কঠোর কিন্তু আন্তরিক পর্যালোচক হিসেবে এই পুল রিকোয়েস্ট ডিফটি রিভিউ করুন। আপনার মন্তব্যগুলোকে বাগ, নিরাপত্তা, পারফরম্যান্স এবং স্টাইলে ভাগ করুন; প্রতিটিকে ব্লকিং বা অপশনাল হিসেবে চিহ্নিত করুন এবং নির্দিষ্ট কোড পরিবর্তনের পরামর্শ দিন। ডিফ: [ডিফ পেস্ট করুন]
-
06
টেবিল ডেফিনিশন থেকে SQL কোয়েরি
এই টেবিলগুলো ব্যবহার করে একটি [PostgreSQL, MySQL বা SQLite] কোয়েরি লিখুন যা [আপনার প্রয়োজন বর্ণনা করুন]: [টেবিল ডেফিনিশন পেস্ট করুন]। কোয়েরিটি সহজ ভাষায় ব্যাখ্যা করুন এবং টেবিল বড় হলে ইনডেক্স ব্যবহারের পরামর্শ দিন।
-
07
টেস্ট স্ট্রিংসহ রেগুলার এক্সপ্রেশন
[ল্যাঙ্গুয়েজ বা টুল]-এর জন্য একটি রেগুলার এক্সপ্রেশন লিখুন যা [প্যাটার্ন বর্ণনা করুন]-এর সাথে মেলে কিন্তু [ব্যতিক্রম বর্ণনা করুন]-এর সাথে মেলে না। প্যাটার্নের প্রতিটি অংশ ব্যাখ্যা করুন এবং পাঁচটি ম্যাচ করা ও পাঁচটি অমিল স্ট্রিং দিন।
-
08
কোড অন্য ল্যাঙ্গুয়েজে রূপান্তর
এই [উৎস ল্যাঙ্গুয়েজ] কোডটিকে মানসম্মত [টার্গেট ল্যাঙ্গুয়েজ]-এ রূপান্তর করুন। লাইন ধরে হুবহু অনুবাদ করবেন না; টার্গেট ল্যাঙ্গুয়েজের প্রচলিত লাইব্রেরি ও প্যাটার্ন ব্যবহার করুন এবং কোনো ভিন্ন আচরণ থাকলে (যেমন ইন্টিজার ডিভিশন বা এরর হ্যান্ডলিং) তা উল্লেখ করুন। কোড: [কোড পেস্ট করুন]
-
09
ভ্যালিডেশনসহ API এন্ডপয়েন্ট
[HTTP মেথড] [রুট]-এর জন্য একটি [ফ্রেমওয়ার্ক] এন্ডপয়েন্ট লিখুন যা [এটি কী করবে]। এই ইনপুট ফিল্ডগুলো যাচাই করুন: [ফিল্ড এবং নিয়মাবলি], সঠিক স্ট্যাটাস কোডসহ স্পষ্ট এরর মেসেজ রিটার্ন করুন এবং একটি রিকোয়েস্ট ও রেসপন্সের উদাহরণ দিন।
-
10
ড্রাই রান সুবিধাসহ নিরাপদ শেল স্ক্রিপ্ট
একটি [bash বা PowerShell] স্ক্রিপ্ট লিখুন যা [কাজ, যেমন: ফোল্ডারের সব ছবির নাম তোলার তারিখ অনুযায়ী পরিবর্তন করে]। এটি নিরাপদ করুন: একটি ড্রাই-রান অপশন যোগ করুন, এরর হলে স্ক্রিপ্ট থামান এবং কী কাজ হচ্ছে তা প্রিন্ট করুন। প্রতিটি সেকশনে কমেন্ট যোগ করুন।
-
11
পারফরম্যান্স বটলনেক শনাক্ত ও সমাধান
প্রায় [ইনপুট সাইজ]-এর বড় ইনপুটে এই [প্রোগ্রামিং ল্যাঙ্গুয়েজ] ফাংশনটি ধীরগতির হয়: [কোড পেস্ট করুন]। এর টাইম ও মেমোরি কমপ্লেক্সিটি ব্যাখ্যা করুন, বটলনেক খুঁজে বের করুন এবং নতুন কমপ্লেক্সিটিসহ একটি দ্রুততর সংস্করণ প্রস্তাব করুন। আউটপুট একই থাকতে হবে।
-
12
ডাটাবেস স্কিমা ডিজাইন
এই প্রয়োজনীয়তাসহ [অ্যাপের বিবরণ, যেমন: ছোট বুকিং সিস্টেম]-এর জন্য একটি ডাটাবেস স্কিমা ডিজাইন করুন: [প্রয়োজনীয়তা]। টেবিল, টাইপসহ কলাম, কী এবং রিলেশনশিপ উল্লেখ করুন এবং অ্যাপ বড় হওয়ার সাথে সাথে পুনর্বিবেচনা করতে হতে পারে এমন একটি ডিজাইন সিদ্ধান্তের কথা বলুন।
-
13
ডকস্ট্রিং ও কমেন্ট যোগ
নিচের কোডে মানসম্মত [প্রোগ্রামিং ল্যাঙ্গুয়েজ] স্টাইলে স্পষ্ট ডকস্ট্রিং বা কমেন্ট যোগ করুন। প্রতিটি ফাংশনের উদ্দেশ্য, প্যারামিটার, রিটার্ন ভ্যালু এবং সম্ভাব্য এরর বর্ণনা করুন; মূল কোডে কোনো পরিবর্তন করবেন না। কোড: [কোড পেস্ট করুন]
-
14
নিরাপদে Git সমস্যা সমাধান করুন
আমি Git-এর এই সমস্যায় পড়েছি: [কী হয়েছে তা লিখুন, যেমন ভুল ব্রাঞ্চে commit করে push করে ফেলেছি]। আসলে কী ঘটছে তা বুঝিয়ে বলুন, নিরাপদে এটি ঠিক করার সঠিক কমান্ডগুলো দিন এবং শেয়ার করা হিস্ট্রি পরিবর্তন করতে পারে এমন যেকোনো কমান্ড সম্পর্কে সতর্ক করুন।
-
15
অনুশীলনের মাধ্যমে নতুন বিষয় শিখুন
আমাকে [ভাষা]-এ [প্রোগ্রামিং কনসেপ্ট, যেমন recursion বা closures] শেখান। প্রথমে সংক্ষিপ্ত ব্যাখ্যা এবং একটি সহজ উদাহরণ দিন, তারপর ক্রমান্বয়ে কঠিন এমন তিনটি অনুশীলনী দিন। প্রতিটি সমাধানের আগে আমার উত্তরের জন্য অপেক্ষা করুন।
-
16
কোড স্নিপেটের নিরাপত্তা পরীক্ষা
ইনজেকশন, অনিরাপদ ডিসিরিয়ালাইজেশন, ইনপুট যাচাইকরণের ঘাটতি, হার্ড-কোড করা গোপন তথ্য এবং দুর্বল প্রমাণীকরণের মতো নিরাপত্তা সমস্যার জন্য এই [ভাষা] কোডটি পরীক্ষা করুন। প্রতিটি সমস্যার ঝুঁকি ব্যাখ্যা করুন এবং সংশোধিত কোড দেখান। কোড: [কোড পেস্ট করুন]
-
17
Diff থেকে স্পষ্ট Commit মেসেজ
এই পরিবর্তনগুলোর জন্য একটি commit মেসেজ লিখুন যেখানে ৭২ অক্ষরের নিচে একটি সংক্ষিপ্ত নির্দেশমূলক সারাংশ লাইন থাকবে এবং মূল অংশে কী ও কেন পরিবর্তন হয়েছে তার ব্যাখ্যা থাকবে: [diff বর্ণনা করুন বা পেস্ট করুন]
-
18
লাইব্রেরি বা পদ্ধতির তুলনা
আমাকে একটি [ভাষা বা ফ্রেমওয়ার্ক] প্রজেক্টে এই শর্তগুলো মেনে [কাজ] করতে হবে: [শর্তসমূহ, যেমন ছোট বান্ডেল, কোনো নেটিভ ডিপেন্ডেন্সি নেই]। একটি টেবিলে দুটি বা তিনটি প্রচলিত পদ্ধতি বা লাইব্রেরির সুবিধা, অসুবিধা ও ব্যবহারের ক্ষেত্র তুলনা করুন এবং তাদের অফিসিয়াল ডকুমেন্টেশনে কোন বিষয়গুলো যাচাই করতে হবে তা জানান।
-
19
অ্যাক্সেসিবল UI কম্পোনেন্ট
[কম্পোনেন্ট, যেমন একটি tabs উইজেট]-এর জন্য একটি অ্যাক্সেসিবল [ফ্রেমওয়ার্ক, অথবা সাধারণ HTML, CSS ও JavaScript] কম্পোনেন্ট তৈরি করুন। প্রয়োজনীয়তা: [প্রয়োজনীয় শর্তাবলী]। কীবোর্ড সাপোর্ট, প্রয়োজনে ARIA অ্যাট্রিবিউট এবং একটি সংক্ষিপ্ত ব্যবহারের উদাহরণ অন্তর্ভুক্ত করুন।
-
20
ডেটা ফাইল পরিষ্কার ও প্রসেস করার স্ক্রিপ্ট
একটি [ভাষা] স্ক্রিপ্ট লিখুন যা এই কলামগুলোসহ [ফাইলের ধরন, যেমন একটি CSV ফাইল] পড়বে: [কলামসমূহ], তারপর [কী গণনা বা রূপান্তর করতে হবে] করবে এবং ফলাফলটি [আউটপুট]-এ লিখবে। অনুপস্থিত মান এবং ত্রুটিপূর্ণ সারিগুলো সঠিকভাবে হ্যান্ডেল করুন এবং শেষে একটি সংক্ষিপ্ত সারাংশ প্রিন্ট করুন।
শুরু করতে প্রস্তুত?
চ্যাট খুলুন এবং আপনার প্রথম প্রশ্নটি করুন। এটি সম্পূর্ণ ফ্রি, এবং কোনো কিছু ইনস্টল করতে হয় না।
চ্যাট শুরু করুন