smells
จากคำกล่าวที่ว่า

If it stinks, change it.
—Grandma Beck, discussing child-rearing philosophy

ถ้ามันเหม็น ก็ทำการเปลี่ยนมันซะ
Code ก็เช่นกัน !!

แต่ปัญหาที่ developer มักพบเจอคือ
code แบบไหนล่ะ ที่ควรแก้ไข !!

Developer ทุกคนต้องการปรับปรุง code ให้มันดีขึ้น

แต่ก่อนอื่น developer ควรมีความสามารถ ดังต่อไปนี้

  • มีจมูกที่ดี ในการดม code ว่า code แบบไหนที่ดี และ ไม่ดี
  • มีความสามารถในการมองเห็นว่า จะปรับปรุงโครงสร้างระบบอย่างไรให้ดีขึ้น
  • มีความสามารถในการเปลี่ยน code ที่มันแย่ๆ ให้มันดีขึ้น

เนื่องจากถ้า developer ไม่รู้ว่า
อะไรบ้างที่มันแย่ ?
อะไรบ้างที่มันไม่ดี ?
แล้วจะทำการแก้ไขได้อย่างไร ?

ดังนั้น developer มาหัดดม code กันดีกว่า
ซึ่งมี resource อยู่มากมาย เช่น

มีวิธีการอะไรบ้าง ที่จะทำให้เราหา code แย่ๆ ได้ดีขึ้น

เมื่อ developer เรียนรู้ว่ารูปแบบ code แย่ๆ เป็นอย่างไรแล้ว
จากนั้นก็ถึงเวลาที่จะปรับปรุงความสามารถในการหาบ้าง
สิ่งที่สำคัญมากๆ คือ ต้องศึกษาสิ่งเล็กๆ ที่เรียกว่า Clean Code

Clean code คือ code ที่ไม่จำเปป็นต้องมี comment เพราะว่า มันอธิบายตัวเองได้ว่า มันทำอะไรอยู่
Clean code คือ code ที่สร้างขึ้นมา เพื่อให้ง่ายต่อการกลับมาอ่าน แก้ไข
Clean code คือ code ที่มี test คลุม เพื่ออธิบายว่า input และ expected result เป็นอย่างไร
Clean code คือ code ที่มีชื่อต่างๆ ที่ดี สื่อความหมายในการทำงาน

จากนั้นควรทำ Code review เพื่อช่วยทำให้เราเห็น code แย่ๆ ง่ายขึ้น
ข้อระวังของการทำ code review คือ ลดสิ่งที่เป็นความคิดเห็นส่วนตัวลงไป
แต่ให้สนใจในเรื่องคุณสมบัติของ code หรือ เน้นเรื่อง code มากๆ
เช่น เรื่องของ SOLID priciple และ DRY (Don’t Repeat Yourself) เป็นต้น

รวมไปถึงควรทำ Pair programming เพื่อทำให้ code มันดีขึ้นกว่าเดิม
นั่นคือ สองหัวย่อมดีกว่าหัวเดียว
แต่ทั้งคู่ต้องยอมรับฟังซึ่งกันและกันด้วยนะครับ

ทั้งหมดนี้เป็นคำแนะนำ

เพื่อปรับปรุงความสามารถในการดมกลิ่นของ developer
ลองนำไปปรับปรุง และ ฝึกฝน ดูได้ครับ