# YAGNI (You Aren't Gonna Need It): รู้จักกับหลักการเขียนโปรแกรมที่จะเปลี่ยนเกมการพัฒนาของคุณ
การเขียนโปรแกรมไม่ใช่แค่การเรียบเรียงโค้ดเพื่อให้ได้ผลลัพธ์ที่ต้องการเท่านั้น แต่ยังเป็นการวางแผน ออกแบบ และการปรับแต่งให้โค้ดของเรามีประสิทธิภาพสำหรับงานปัจจุบันและอนาคต ทว่าในขณะที่เราพยายามทำให้โค้ดของเราสามารถรองรับงานในอนาคต หลายครั้งเรามักถูกล่อลวงไปสู่ความคิดที่ว่า "เราคงจะต้องการฟีเจอร์นี้ในภายหลัง" และนั่นนำเราไปสู่หลักการที่สำคัญในการพัฒนาซอฟต์แวร์ที่เรียกว่า YAGNI หรือ "You Aren't Gonna Need It".
YAGNI เป็นหลักการที่กล่าวอย่างง่ายๆ ว่า "อย่าเขียนโค้ดที่ตอนนี้คุณไม่ต้องการ" หรือในทางปฏิบัติคือ หากคุณไม่มีความจำเป็นที่ชัดเจนในปัจจุบันที่จะต้องมีฟีเจอร์ หรือส่วนขยายใดๆ ก็ไม่ควรเสียเวลาและทรัพยากรไปพัฒนามัน เพราะฉะนั้น YAGNI จึงเป็นหลักการที่เน้นย้ำถึงการจำกัดความซับซ้อน ลดความเสี่ยงในการเขียนโค้ดที่ไม่มีความจำเป็นและช่วยให้ทีมพัฒนามีความยืดหยุ่นมากขึ้นในการรับมือกับความต้องการที่เปลี่ยนแปลงไป.
ยกตัวอย่างในโปรเจกต์จริง
ลองนึกถึงการพัฒนาเว็บแอปพลิเคชันสำหรับจัดการห้องสมุด คุณอาจคิดว่าผู้ใช้อาจต้องการค้นหาหนังสือตามนักเขียน, ประเภท, หรือแม้กระทั่งราคาในภายหลัง ดังนั้นคุณจึงเพิ่มฟังก์ชันค้นหาสุดซับซ้อนที่สามารถจัดการกับทั้งหมดนี้ แต่ถ้าความจริงคือ library ของคุณใช้งานเพียงแค่ค้นหาตามชื่อหนังสือและผู้เขียน? นี่คือตัวอย่างของการละเมิดหลักการ YAGNI โดยที่คุณได้ใส่ความพยายามเข้าไปในฟีเจอร์ที่ "อาจ" ไม่จำเป็น.
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM