พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด
ใช้ LLM ระบุข้อผิดพลาดในโค้ดที่มีอยู่ และเสนอการปรับปรุงเพื่อปรับโครงสร้างและเพิ่มประสิทธิภาพ
พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด เป็นบทเรียน AI Prompt Engineering ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AI Prompt Engineering และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AI Prompt Engineering มีบทเรียนทั้งหมด 3 บทเรียน
LLM เพื่อคุณภาพโค้ด
โมเดลภาษาขนาดใหญ่ (LLM) ไม่ได้มีไว้สำหรับสร้างโค้ดใหม่เท่านั้น แต่ยังเป็นผู้ช่วยที่ทรงพลังในการปรับปรุงโค้ดที่มีอยู่ ลองมองว่า LLM เป็นผู้ตรวจสอบโค้ดอัจฉริยะของคุณ
ในบทเรียนนี้ เราจะสำรวจว่า LLM สามารถช่วยคุณได้อย่างไรบ้าง:
- ระบุและแก้ไขจุดบกพร่องในโค้ดของคุณ
- เสนอการปรับปรุงสำหรับการปรับโครงสร้างโค้ด
- เพิ่มประสิทธิภาพโค้ดเพื่อให้ทำงานได้ดีขึ้นและเข้าใจง่ายขึ้น
การแก้ไขจุดบกพร่องด้วยปัญญาประดิษฐ์: การตรวจจับจุดบกพร่อง
การแก้ไขจุดบกพร่อง คือกระบวนการค้นหาและแก้ไขข้อผิดพลาด (จุดบกพร่อง) ในซอฟต์แวร์ ซึ่งอาจเป็นงานที่ใช้เวลามาก
LLM สามารถเร่งการแก้ไขจุดบกพร่องได้อย่างมากด้วยวิธีต่อไปนี้:
- วิเคราะห์โค้ดเพื่อค้นหาข้อผิดพลาดทั่วไป
- ระบุตำแหน่งที่แน่นอนของข้อผิดพลาด
- เสนอวิธีแก้ไขที่เป็นรูปธรรมและโค้ดที่แก้ไขแล้ว
มาดูตัวอย่างกัน
พรอมต์แก้ไขจุดบกพร่องแรกของคุณ
ลองนึกภาพว่าคุณมีฟังก์ชันไพธอนที่ควรจะรวมตัวเลขในรายการ แต่ทำงานไม่ถูกต้อง คุณสามารถเขียนพรอมต์ให้ LLM ค้นหาจุดบกพร่องได้
นี่คือฟังก์ชันไพธอนที่มีจุดบกพร่อง คุณมองเห็นข้อผิดพลาดหรือไม่
def calculate_sum(numbers):
total = 0
for num in numbers:
total + num # This line is the bug!
return total
my_list = [1, 2, 3]
print(f"The sum is: {calculate_sum(my_list)}")ข้อค้นพบด้านการแก้ไขจุดบกพร่องจาก LLM
หากคุณส่งโค้ดก่อนหน้านี้ให้ LLM พร้อมพรอมต์อย่าง "ค้นหาจุดบกพร่องในฟังก์ชันไพธอนนี้และอธิบายวิธีแก้ไข" LLM จะระบุปัญหาได้อย่างถูกต้อง
จุดบกพร่องคือ total + num คำนวณค่าออกมาแต่ไม่ได้กำหนดค่ากลับไปยัง total นี่คือโค้ดที่แก้ไขแล้ว:
def calculate_sum(numbers):
total = 0
for num in numbers:
total = total + num # Corrected assignment
return total
my_list = [1, 2, 3]
print(f"The sum is: {calculate_sum(my_list)}")การปรับโครงสร้างโค้ดด้วย LLM: โค้ดสะอาด
การปรับโครงสร้างโค้ด คือกระบวนการจัดโครงสร้างโค้ดคอมพิวเตอร์ที่มีอยู่ใหม่ โดยไม่เปลี่ยนพฤติกรรมภายนอกของโค้ด เปรียบเสมือนการจัดห้องให้เรียบร้อยโดยไม่ย้ายเฟอร์นิเจอร์ใด ๆ
เป้าหมายหลักของการปรับโครงสร้างโค้ดคือการปรับปรุงสิ่งต่อไปนี้:
- ความเข้าใจง่าย: ทำให้โค้ดเข้าใจได้ง่ายขึ้น
- ความง่ายต่อการบำรุงรักษา: ทำให้การอัปเดตและการเปลี่ยนแปลงในอนาคตง่ายขึ้น
- ประสิทธิภาพ: บางครั้งอาจทำให้โค้ดทำงานเร็วขึ้น แม้จะไม่ใช่เป้าหมายหลักก็ตาม
พรอมต์พื้นฐานสำหรับการปรับโครงสร้างโค้ด
LLM สามารถเสนอวิธีทำให้โค้ดกระชับและเป็นไปตามแนวทางของไพธอนมากขึ้น (สอดคล้องกับแนวทางปฏิบัติที่ดีที่สุดของไพธอน)
ลองพิจารณาฟังก์ชันนี้ที่ประมวลผลรายการ ฟังก์ชันนี้ทำงานได้ แต่จะทำให้สะอาดขึ้นได้หรือไม่
def process_positive_squares(data_items):
result_list = []
for item in data_items:
if item > 0:
squared_val = item * item
result_list.append(squared_val)
return result_list
numbers = [1, -2, 3, -4, 5]
print(f"Processed list: {process_positive_squares(numbers)}")เวอร์ชันที่สะอาดยิ่งขึ้น
ด้วยพรอมต์อย่าง "ปรับโครงสร้างฟังก์ชันไพธอนนี้เพื่อให้เข้าใจง่ายและกระชับยิ่งขึ้น โดยใช้การสร้างรายการแบบกระชับ" LLM อาจเสนอสิ่งนี้:
การสร้างรายการแบบกระชับ คือวิธีแบบกระชับในการสร้างรายการใหม่จากลำดับข้อมูลเดิม
def process_positive_squares(data_items):
# Using a list comprehension for conciseness
return [item * item for item in data_items if item > 0]
numbers = [1, -2, 3, -4, 5]
print(f"Processed list: {process_positive_squares(numbers)}")การเพิ่มประสิทธิภาพโค้ดด้วย LLM
นอกเหนือจากการทำให้เข้าใจง่ายขึ้นแล้ว LLM ยังสามารถเสนอวิธีเพิ่มประสิทธิภาพโค้ดเพื่อให้ทำงานได้ดีขึ้น ซึ่งมักเกี่ยวข้องกับการแทนที่ลูปที่เขียนขึ้นเองด้วยฟังก์ชันในตัวหรืออัลกอริทึมที่มีประสิทธิภาพมากกว่า
นี่คือฟังก์ชันสำหรับค้นหาตำแหน่งแรกที่อักขระปรากฏ ฟังก์ชันนี้ทำงานได้ แต่ในไพธอนมีวิธีที่เพิ่มประสิทธิภาพได้ดีกว่า
def find_char_manually(text, char):
for i in range(len(text)):
if text[i] == char:
return i
return -1
my_string = "hello world"
print(f"'o' found at index: {find_char_manually(my_string, 'o')}")การใช้ฟังก์ชันในตัวให้เกิดประโยชน์
พรอมต์ที่ดีในกรณีนี้อาจเป็น: "ฉันจะเพิ่มประสิทธิภาพฟังก์ชันไพธอนนี้สำหรับค้นหาตำแหน่งแรกที่อักขระปรากฏได้อย่างไร"
LLM น่าจะชี้ไปยังเมธอดสตริงในตัวของไพธอนที่ได้รับการเพิ่มประสิทธิภาพมาอย่างดี เช่น .find()
def find_char_optimized(text, char):
# Using the built-in string find method, which is highly optimized
return text.find(char)
my_string = "hello world"
print(f"'o' found at index: {find_char_optimized(my_string, 'o')}")ตรวจสอบอย่างรวดเร็ว
การเข้าใจความแตกต่างระหว่างการแก้ไขจุดบกพร่องกับการปรับโครงสร้างโค้ดเป็นกุญแจสำคัญต่อการปรับปรุงโค้ดอย่างมีประสิทธิภาพ
ทบทวน: ผู้ช่วยเขียนโค้ดปัญญาประดิษฐ์ของคุณ
ในบทเรียนนี้ เราได้ค้นพบว่า LLM เป็นเครื่องมือที่มีคุณค่าอย่างยิ่งสำหรับการยกระดับคุณภาพโค้ดของคุณ
- การแก้ไขจุดบกพร่อง: LLM สามารถระบุข้อผิดพลาด อธิบายข้อผิดพลาด และเสนอวิธีแก้ไขได้อย่างรวดเร็ว ช่วยประหยัดเวลาของคุณ
- การปรับโครงสร้างโค้ด: LLM ช่วยปรับปรุงโครงสร้างโค้ด ความเข้าใจง่าย และความง่ายต่อการบำรุงรักษา โดยมักเสนอวิธีเขียนโค้ดที่กระชับขึ้นหรือเป็นไปตามแนวทางของไพธอน
- การเพิ่มประสิทธิภาพ: LLM ยังสามารถชี้ให้เห็นคอขวดด้านประสิทธิภาพและเสนอแนวทางที่มีประสิทธิภาพมากขึ้น
อย่าลืมร่างพรอมต์ที่ชัดเจนและเฉพาะเจาะจง เพื่อให้ได้ผลลัพธ์ที่ดีที่สุดจากผู้ช่วยเขียนโค้ดปัญญาประดิษฐ์ของคุณ
คำถามที่พบบ่อย
บทเรียน “พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AI Prompt Engineering ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AI Prompt Engineering มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด”
ใช้ LLM ระบุข้อผิดพลาดในโค้ดที่มีอยู่ และเสนอการปรับปรุงเพื่อปรับโครงสร้างและเพิ่มประสิทธิภาพ คุณปฏิบัติ AI Prompt Engineering ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AI Prompt Engineering หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน AI Prompt Engineering บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน
บทเรียน “พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน AI Prompt Engineering นี้ได้ไหม
ได้ บทเรียน AI Prompt Engineering ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การสร้างโค้ดด้วย LLM
- พรอมป์สำหรับแก้ไขข้อผิดพลาดและปรับโครงสร้างโค้ด
- การผสานรวม LLM เข้ากับ IDE