Skip to content

Month: April 2014

Node.js tips: อย่าใช้ loop วนหลายรอบใน callback function

พอดีลอง optimize โค้ด Node.js  app ที่เขียนเอาไว้เมื่อนานมาแล้วแก้ไปแก้มาแทนที่จะดีขึ้นดันแย่กว่าเดิมเพราะทำงานไปเรื่อยๆ แล้วโปรแกรม terminated ไม่แจ้ง error อะไรเลย งานเข้าล่ะสิ!

เลยเปิด htop  ดู CPU และ memory ดูปรากฎว่า CPU peak ทำงาน 100% และ memory แนวโน้มเพิ่มขึ้นเรื่อยๆ พอถึงระยะหนึ่งที่ OS มัน limit การใช้ resources ของเครื่องเพื่อรักษาระบบโดยรวมมันเลย kill process ของ Node.js ทิ้ง เอาหละเจอสาเหตุแล้วก็เลยไล่โค้ดต่อ

Code refactoring แล้วดียังไง?

การทำ “Code refactoring” หรือการปรับปรุงโค้ดเดิมให้ดีขึ้น ซึ่งคำว่าดีในที่นี้ก็แล้วแต่จะนิยามกันไป จุดประสงค์หลักของการทำคือทำให้โค้ดที่มีอยู่เป็น “Clean code”

  • ลดความซับซ้อนของโค้ด
  • ทำให้คนอ่านโค้ดรู้เรื่องให้มากที่สุด
  • แก้ไข/เปลี่ยนแปลงได้ง่าย
  • ทำให้โค้ดแต่ละส่วนไม่ขึ้นต่อกันมีความเป็น modular