arrow_backกลับไปที่บันทึกภาคสนาม
AI เผยแพร่แล้ว 30 Jul 2026

นักพัฒนาทำผิดพลาดอะไรบ้างเมื่อเขียนโค้ดด้วย AI Assistants?

มองใจความของวิธีที่นักพัฒนาใช้ AI coding assistants ผิดวิธีทั่วไป และวิธีหลีกเลี่ยงการส่งโค้ดที่มีบั้กและช่องโหว่

AI assistants เช่น Copilot, Claude, และโมเดลในตัวของ Cursor ได้เปลี่ยนความเร็วในการเขียนโค้ด แต่ไม่ได้เปลี่ยนความต้องการในการตรวจสอบ ความเสียหายส่วนใหญ่ที่ฉันเห็นจากการเขียนโค้ดด้วย AI มาจากนิสัยซ้ำๆ เพียงไม่กี่อย่าง ไม่ใช่มาจากโมเดลเอง

การยอมรับการแนะนำโดยไม่อ่าน

ข้อปัญหาใหญ่ที่สุดคือการตอบรับการเติมเต็มด้วยแท็บเพราะมันดูเหมือนสมควรและคอมไพล์ได้ สมควรไม่ใช่ถูกต้อง ฉันเห็นการเสนอแนะ SQL query ลบ WHERE clause ระหว่างการเปลี่ยนโครงสร้างอย่างเงียบๆ และคนนั้นยอมรับเพราะชื่อตัวแปรตรงกัน ถ้าคุณไม่ได้อ่านทุกบรรทัดที่ assistant มอบให้ด้วยความเร็วเดียวกับที่คุณอ่าน pull request จากเพื่อนร่วมงาน คุณจะส่งบางสิ่งที่คุณไม่เข้าใจ ให้หวังให้การแนะนำทุกอย่างเป็นร่างแรกจากนักพัฒนาจูเนียร์ที่เร็ว แต่ไม่มีความจำเกี่ยวกับธรรมเนียมของ codebase ของคุณ

การไว้วางใจกับโค้ดที่เกี่ยวข้องกับความปลอดภัย

AI assistants ได้รับการฝึกอบรมจากโค้ดสาธารณะจำนวนมหาศาล และโค้ดจำนวนมากนั้นมีปัญหาความปลอดภัยฝังตัวอยู่ ขอ file upload handler อย่างรวดเร็วและคุณมักจะได้สิ่งที่ไม่มีการตรวจสอบส่วนขยาย ไม่มีข้อจำกัดขนาด และ path ที่สร้างโดยการต่อสตริงแทน os.path.join หรือการเรียก safe library แบบเดียวกันกับ auth: assistants ชอบแนะนำการเก็บ JWT ใน localStorage หรือเปรียบเทียบความลับด้วย == แทนการเปรียบเทียบเวลาคงที่ ไม่มีอันใดเป็นอันตรายร้าย มันเป็นเพียงสถิติทั่วไปในข้อมูลการฝึกอบรม สำหรับสิ่งใดก็ตามที่เกี่ยวข้องกับการรับรองความถูกต้อง ไฟล์ I/O การแบ่งซีเรียลไลเซชัน หรือ SQL ให้เขียนตรรกะด้วยตัวเองหรือตรวจสอบผลลัพธ์ของ AI ผ่านคำถามเดียวกันที่คุณจะถามเกี่ยวกับโค้ดใหม่: จะเกิดอะไรขึ้นกับ input ที่ไม่สัจจะ จะเกิดอะไรขึ้นหากการเรียกนี้ล้มเหลว ใครอีกคนที่สามารถเข้าถึง endpoint นี้

ปล่อยให้มันสร้าง dependencies และ APIs

โมเดลสร้างสิ่งประดิษฐ์ชื่อแพคเกจและลายเซ็นฟังก์ชันด้วยความมั่นใจทั้งหมด นี่คือปัญหา "slopsquatting" — ผู้โจมตีลงทะเบียนชื่อแพคเกจที่ปลอมที่โมเดลแนะนำบ่อยๆ ดังนั้น pip install หรือ npm install ที่ไม่ได้ยืนยันสามารถดึงสิ่งที่ไม่ใช่ library logging ของคุณเลยได้ ก่อนที่จะเพิ่ม dependency ที่ assistant แนะนำ ให้ตรวจสอบว่ามันมีอยู่จริงบน PyPI หรือ npm ตรวจสอบจำนวนการดาวน์โหลดและวันที่เผยแพร่ล่าสุด และอ่านผ่านแหล่งที่มาหากมีขนาดเล็กพอ ความระมัดระวังเดียวกันนี้ใช้กับการเรียก API: ถ้า assistant อ้างถึงเมธอดที่คุณไม่รู้จัก ให้ตรวจสอบเอกสารจริงก่อนสมมติว่ามีอยู่

การสูญเสียแบบจำลองจิตของโค้ดของคุณเอง

เมื่อคุณเขียนโค้ดด้วยตัวเอง คุณสร้างแผนที่จิตของเหตุผลที่แต่ละชิ้นมีอยู่ เมื่อคุณยอมรับบล็อกโค้ดที่สร้างจาก AI ขนาดใหญ่ตลอดเซสชัน แผนที่นั้นจะบางเร็วมาก จากนั้น bug ปรากฏสามสัปดาห์ต่อมาและคุณกำลังแก้ไขโค้ดที่คุณไม่เคยเขียนจริงและไม่ได้จำได้ดี การแก้ไขไม่ได้คือหลีกเลี่ยงโค้ดที่สร้างจาก AI มันต้องช้าลงพอที่จะอธิบายแต่ละชิ้นให้ตัวเองหรือให้เพื่อนร่วมงาน ก่อนที่จะรวมเข้าด้วยกัน ถ้าคุณไม่สามารถอธิบายว่าฟังก์ชันทำอะไรและทำเหตุใดจึงทำแบบนั้น อย่ารวมเข้าด้วยกัน

การข้ามการทดสอบเพราะโค้ด

เขียนด้วยความช่วยเหลือของ AI ตรวจสอบและเผยแพร่โดย Michal Pilch (CISSP), Korra Studio

พร้อมที่จะไปต่อหรือไม่

นี่คือบันทึกหนึ่งจากฐานความรู้ของ Korra Studio — แพลตฟอร์มจับคู่หัวข้อแต่ละหัวข้อกับการฝึกสอนแบบ 1-to-1

เริ่มใช้งานฟรีarrow_forward