Prompt เขียนโค้ด
ชุด prompt สำหรับงานเขียนโค้ดประจำวัน: ทั้งอธิบาย ดีบัก เขียนเทสต์ รีแฟกเตอร์ รีวิว และจัดทำเอกสารประกอบโค้ดได้ทุกภาษา
พรอมต์เขียนโค้ดเหล่านี้ออกแบบมาสำหรับการทำงานจริง ไม่ใช่แค่ตัวอย่างเล่นๆ ครอบคลุมตั้งแต่การอธิบายโค้ดที่ไม่คุ้นเคย การดีบักพร้อมเรียงลำดับสมมติฐาน การเขียนยูนิตเทสต์ การรีแฟกเตอร์ การรีวิวดิฟฟ์ SQL, Regular Expressions การกู้สถานการณ์ใน Git การตรวจสอบความปลอดภัย การทำเอกสาร ไปจนถึงสคริปต์ขนาดเล็ก พรอมต์ส่วนใหญ่ใช้ได้กับทุกภาษา เพียงระบุภาษา เฟรมเวิร์ก หรือเครื่องมือลงใน [วงเล็บเหลี่ยม] แล้ววางโค้ดของคุณตามจุดที่ระบุ การใช้โค้ดสั้นๆ ที่ตรงจุดจะช่วยให้ได้คำตอบที่ดีกว่าการวางไฟล์ทั้งหมด
แต่ละพรอมต์เน้นผลลัพธ์ที่คุณตรวจสอบได้จริง คุณสามารถรันเทสต์ ตรวจเช็กคำอธิบายเทียบกับโค้ด และดูเหตุผลเบื้องหลังการแก้ปัญหาได้ ซึ่งช่วยให้จับจุดผิดพลาดได้ง่ายขึ้น เพราะ AI อาจสร้างโค้ดที่ดูเผินๆ เหมือนจะถูก แต่กลับพังเมื่อเจอกรณีพิเศษ (edge cases) หรือเรียกใช้ฟังก์ชันที่ไม่มีอยู่จริง คุณสามารถกด "คัดลอก" เพื่อนำพรอมต์ไปใช้ในโปรแกรมแก้ไขโค้ดหรือสมุดโน้ต หรือเลือก "ใช้ในการแชท" เพื่อเปิดใน ChatG ซึ่งจะแสดงโค้ดพร้อมไฮไลต์และปุ่มคัดลอกในตัว
ก่อนวางโค้ดใดๆ โปรดลบ API keys, รหัสผ่าน, โทเค็น และข้อมูลลูกค้าออกเสมอ พร้อมตรวจสอบว่านโยบายขององค์กรอนุญาตให้แชร์โค้ดกับบริการ AI ภายนอกหรือไม่ หากต้องการถามคำถามสั้นๆ เพียงข้อเดียว เครื่องมือ Code Assistant จะตอบได้รวดเร็วกว่า หรือหากต้องการศึกษาเพิ่มเติมเกี่ยวกับเวิร์กโฟลว์และข้อจำกัดต่างๆ สามารถอ่านได้ที่ AI สำหรับการเขียนโค้ด และ ChatG สำหรับนักพัฒนา
วิธีปรับแต่งพรอมต์เหล่านี้
- ระบุเวอร์ชันและข้อจำกัด: เช่น เวอร์ชันของภาษา, เฟรมเวิร์ก, รันไทม์ และเงื่อนไขอย่าง "ห้ามติดตั้ง dependencies เพิ่ม"
- ย่อโค้ดที่ป้อนให้สั้นที่สุด ให้เหลือเพียงตัวอย่างขั้นต่ำที่ยังแสดงปัญหาได้ชัดเจน
- ส่งผลลัพธ์กลับไปถามต่อ หลังจากลองแก้แล้ว หากเกิดข้อผิดพลาดใหม่ ให้ส่งกลับไปแล้วถามวิธีแก้ขั้นถัดไป
- กำหนดรูปแบบผลลัพธ์ที่ต้องการให้ชัดเจน เช่น ขอเป็น diff โค้ด, ฟังก์ชันเดี่ยวๆ หรือตารางเปรียบเทียบตัวเลือก
ตรวจสอบโค้ดที่ AI สร้างขึ้นก่อนนำไปรันเสมอ และควรทดสอบในสภาพแวดล้อมที่ปลอดภัยก่อนทุกครั้ง
-
01
อธิบายโค้ดแบบวิศวกรระดับซีเนียร์
คุณคือวิศวกร [ภาษา] ระดับซีเนียร์ที่กำลังให้คำแนะนำแก่นักพัฒนาระดับจูเนียร์ อธิบายการทำงานของโค้ดด้านล่างทีละขั้นตอน จากนั้นชี้ให้เห็นจุดที่ผิดปกติ มีความเสี่ยง หรือคุ้มค่าที่จะรีแฟกเตอร์ โค้ด: [วางโค้ด]
-
02
ดีบักข้อผิดพลาดพร้อมจัดอันดับสาเหตุ
โค้ด [ภาษาหรือเฟรมเวิร์ก] ของฉันเกิดข้อผิดพลาดนี้: [วาง error และ stack trace] นี่คือโค้ดที่เกี่ยวข้อง: [วางโค้ด] โปรดระบุ 3 สาเหตุที่เป็นไปได้มากที่สุดตามลำดับ บอกวิธีตรวจสอบยืนยันแต่ละข้อ และเสนอวิธีแก้ไขสำหรับสาเหตุที่มีโอกาสเกิดขึ้นมากที่สุด
-
03
Unit Test พร้อมครอบคลุม Edge Case
เขียน Unit Test ด้วย [เฟรมเวิร์กทดสอบ] สำหรับฟังก์ชันด้านล่าง ครอบคลุมทั้งอินพุตปกติ, ค่าขอบเขต (boundary values), อินพุตว่างหรือ null และประเภทข้อมูลที่ไม่ถูกต้อง พร้อมตั้งชื่อการทดสอบแต่ละรายการตามพฤติกรรมที่ตรวจสอบ ฟังก์ชัน: [วางฟังก์ชัน]
-
04
รีแฟกเตอร์โดยไม่เปลี่ยนพฤติกรรมโค้ด
รีแฟกเตอร์โค้ด [ภาษา] นี้ให้อ่านง่ายและบำรุงรักษาได้ดีขึ้นโดยไม่เปลี่ยนพฤติกรรมการทำงาน ใช้ชื่อที่สื่อความหมาย แตกเป็นฟังก์ชันย่อย และลดความซ้ำซ้อน โดยคงอินเทอร์เฟซสาธารณะเดิมไว้ พร้อมอธิบายการเปลี่ยนแปลงแต่ละจุดสั้นๆ โค้ด: [วางโค้ด]
-
05
รีวิว Pull Request ตามระดับความรุนแรง
รีวิวความเปลี่ยนแปลง (diff) ของ Pull Request นี้ในฐานะผู้ตรวจที่เข้มงวดแต่เป็นกันเอง จัดกลุ่มความคิดเห็นออกเป็น บั๊ก, ความปลอดภัย, ประสิทธิภาพ และสไตล์ ระบุแต่ละข้อว่าจำเป็นต้องแก้ก่อน (blocking) หรือเป็นข้อเสนอแนะเพิ่มเติม (optional) และเสนอโค้ดแก้ไขที่ชัดเจน Diff: [วาง diff]
-
06
เขียนคิวรี SQL จากโครงสร้างตาราง
เขียนคิวรี [PostgreSQL, MySQL หรือ SQLite] เพื่อ [อธิบายสิ่งที่คุณต้องการ] โดยใช้ตารางเหล่านี้: [วางโครงสร้างตาราง] อธิบายการทำงานของคิวรีเป็นภาษาที่เข้าใจง่าย และแนะนำการทำ Index หากตารางมีขนาดใหญ่
-
07
เขียน Regular Expression พร้อมสตริงทดสอบ
เขียน Regular Expression สำหรับ [ภาษาหรือเครื่องมือ] ที่ตรงกับ [อธิบายรูปแบบ] แต่ไม่รวม [อธิบายข้อยกเว้น] อธิบายแต่ละส่วนของแพทเทิร์น และให้ตัวอย่างสตริงที่ควรตรงกัน 5 ตัวอย่าง และที่ไม่ควรตรงกัน 5 ตัวอย่าง
-
08
แปลงโค้ดเป็นภาษาอื่น
แปลงโค้ด [ภาษาต้นทาง] นี้ให้เป็น [ภาษาเป้าหมาย] ตามสำนวนและแนวทางปฏิบัติที่ดี อย่าแปลแบบบรรทัดต่อบรรทัด ให้ใช้ไลบรารีและแพทเทิร์นทั่วไปของภาษาเป้าหมาย พร้อมชี้ให้เห็นพฤติกรรมที่แตกต่างกัน เช่น การหารจำนวนเต็มหรือการจัดการข้อผิดพลาด โค้ด: [วางโค้ด]
-
09
API Endpoint พร้อมการตรวจสอบข้อมูล
เขียน Endpoint ด้วย [เฟรมเวิร์ก] สำหรับ [HTTP method] [route] เพื่อ [การทำงานที่ต้องการ] ทำการตรวจสอบฟิลด์อินพุตเหล่านี้: [ฟิลด์และกฎการตรวจสอบ] ส่งกลับข้อความแสดงข้อผิดพลาดที่ชัดเจนพร้อมรหัสสถานะที่ถูกต้อง และใส่ตัวอย่าง Request และ Response ด้วย
-
10
Shell Script ที่ปลอดภัยพร้อมโหมด Dry-run
เขียนสคริปต์ [bash หรือ PowerShell] เพื่อ [งาน เช่น เปลี่ยนชื่อรูปภาพทั้งหมดในโฟลเดอร์ตามวันที่ถ่าย] ทำให้อุ่นใจและปลอดภัย: เพิ่มตัวเลือก dry-run, ให้หยุดทำงานทันทีเมื่อพบ error และพิมพ์สถานะการทำงานออกทางหน้าจอ ใส่คอมเมนต์อธิบายแต่ละส่วน
-
11
ค้นหาและแก้ไขปัญหาคอขวดด้านประสิทธิภาพ
ฟังก์ชัน [ภาษา] นี้ทำงานช้าเมื่อเจออินพุตขนาดใหญ่ประมาณ [ขนาดอินพุต]: [วางโค้ด] ช่วยอธิบาย Time และ Memory Complexity ค้นหาจุดที่เป็นคอขวด และเสนอเวอร์ชันที่ทำงานได้เร็วกว่าพร้อมระบุ Complexity ใหม่ โดยผลลัพธ์การทำงานต้องเหมือนเดิม
-
12
ออกแบบโครงสร้างฐานข้อมูล (Schema)
ออกแบบโครงสร้างฐานข้อมูลสำหรับ [อธิบายแอปพลิเคชัน เช่น ระบบจองขนาดเล็ก] ตามความต้องการเหล่านี้: [ความต้องการ] ระบุตาราง, คอลัมน์พร้อมประเภทข้อมูล, คีย์ต่างๆ และความสัมพันธ์ พร้อมระบุจุดตัดสินใจในการออกแบบ 1 จุดที่คุณอาจต้องกลับมาปรับปรุงใหม่เมื่อแอปเติบโตขึ้น
-
13
เพิ่ม Docstring และคอมเมนต์
เพิ่ม Docstring หรือคอมเมนต์ที่ชัดเจนตามมาตรฐานของ [ภาษา] ให้กับโค้ดด้านล่าง อธิบายวัตถุประสงค์ของแต่ละฟังก์ชัน, พารามิเตอร์, ค่าที่ส่งกลับ และข้อผิดพลาดที่อาจเกิดขึ้น โดยไม่ต้องแก้ไขตัวโค้ด โค้ด: [วางโค้ด]
-
14
แก้ปัญหา Git ยุ่งเหยิงอย่างปลอดภัย
ฉันกำลังเจอปัญหา Git แบบนี้: [อธิบายสิ่งที่เกิดขึ้น เช่น คอมมิตผิดกิ่งแล้ว push ไปแล้ว] ช่วยอธิบายว่าเกิดอะไรขึ้น ให้คำสั่งที่ถูกต้องเพื่อแก้ไขอย่างปลอดภัย และเตือนด้วยหากมีคำสั่งไหนที่จะเขียนทับประวัติที่แชร์ร่วมกัน
-
15
เรียนรู้คอนเซปต์พร้อมแบบฝึกหัด
ช่วยสอน [คอนเซปต์การเขียนโปรแกรม เช่น recursion หรือ closures] ในภาษา [ภาษา] ให้หน่อย เริ่มต้นด้วยคำอธิบายสั้นๆ และตัวอย่างง่ายๆ จากนั้นให้แบบฝึกหัด 3 ข้อที่เรียงจากง่ายไปยาก รอคำตอบจากฉันก่อนที่จะแสดงเฉลยของแต่ละข้อ
-
16
ตรวจสอบความปลอดภัยของโค้ดสั้นๆ
ช่วยตรวจสอบโค้ดภาษา [ภาษา] นี้ว่ามีปัญหาด้านความปลอดภัยหรือไม่ เช่น injection, unsafe deserialization, การขาด input validation, hard-coded secrets และ weak authentication สำหรับแต่ละปัญหา ให้อธิบายความเสี่ยงและแสดงโค้ดที่แก้ไขแล้ว โค้ด: [วางโค้ด]
-
17
เขียน commit message ที่ชัดเจนจาก diff
ช่วยเขียน commit message สำหรับการเปลี่ยนแปลงเหล่านี้ โดยมีบรรทัดสรุปแบบคำสั่งสั้นๆ ไม่เกิน 72 ตัวอักษร และเนื้อหาที่อธิบายว่าแก้ไขอะไรและทำไม: [อธิบายหรือวาง diff]
-
18
เปรียบเทียบไลบรารีหรือแนวทางต่างๆ
ฉันต้องการ [งานที่ต้องทำ] ในโปรเจกต์ [ภาษาหรือเฟรมเวิร์ก] โดยมีข้อจำกัดเหล่านี้: [ข้อจำกัด เช่น ขนาด bundle เล็ก, ไม่มี native dependencies] ช่วยเปรียบเทียบ 2 หรือ 3 แนวทางหรือไลบรารียอดนิยมในรูปแบบตาราง พร้อมข้อดี ข้อเสีย และกรณีที่ควรเลือกใช้ รวมถึงระบุรายละเอียดที่ควรตรวจสอบในเอกสารทางการ
-
19
สร้าง UI คอมโพเนนต์ที่เข้าถึงได้ทุกคน
สร้างคอมโพเนนต์ [เฟรมเวิร์ก หรือ HTML, CSS และ JavaScript ธรรมดา] ที่เข้าถึงได้ง่าย (accessible) สำหรับ [คอมโพเนนต์ เช่น วิดเจ็ตแท็บ] ข้อกำหนด: [ข้อกำหนด] โดยต้องรองรับการใช้คีย์บอร์ด ใส่แอตทริบิวต์ ARIA ในจุดที่จำเป็น และมีตัวอย่างการใช้งานสั้นๆ
-
20
สคริปต์ทำความสะอาดและประมวลผลไฟล์ข้อมูล
เขียนสคริปต์ภาษา [ภาษา] ที่อ่าน [ประเภทไฟล์ เช่น ไฟล์ CSV] ซึ่งมีคอลัมน์ต่อไปนี้: [คอลัมน์] จากนั้น [สิ่งที่ต้องการคำนวณหรือแปลงข้อมูล] และบันทึกผลลัพธ์ลงใน [ปลายทาง] จัดการค่าที่หายไปและแถวที่รูปแบบไม่ถูกต้อง พร้อมแสดงสรุปสั้นๆ ตอนท้าย
พร้อมให้คุณเริ่มใช้งานได้ทันที
เปิดหน้าแชทแล้วพิมพ์คำถามแรกของคุณได้เลย ฟรี และไม่ต้องติดตั้งสิ่งใด
เริ่มแชทเลย