มาเรียนรู้ วิธี Review Code ที่เหมาะสมกัน

14-มิ.ย.-19

คัมภีร์เทพ IT

หากมีเพื่อนร่วมงานของคุณ มาขอให้คุณช่วย Review Code ให้พวกเขา แต่คุณไม่ทราบเลยว่าเพื่อนร่วมงานของคุณกำลังทำอะไรอยู่ อาจเป็นการแก้ไข Bug ง่าย ๆ, Feature ต่าง ๆ หรือกำลัง Refactor อยู่ แถมยังไม่รู้ว่า Scale ของงานเป็นอย่างไร ดังนั้นคุณควรเตรียมพร้อมก่อนจะช่วย Review Code ให้คนอื่น วันนี้เรามาเรียนรู้ วิธี Review Code ที่เหมาะสมได้จากบทความนี้กันเลย

การ Review Code คืออะไร

หากดูตามความหมายของ Wikipedia การ Review Code คือ:

การประกันคุณภาพของ Software จะเป็นกิจกรรมที่มีบุคคลหนึ่งหรือหลายคน ร่วมกันตรวจสอบ Program โดยหลัก ๆ จะเป็นการดูและอ่านส่วนต่าง ๆ ของ Source Code และพวกเขาจะทำหลังจากการ Implement หรือขณะที่ติดขัดจากการ Implement โดยที่มีอย่างน้อยหนึ่งคนที่ต้องไม่เป็นผู้เขียน Code นั้น

ถ้าพูดง่าย ๆ ก็หมายความว่า ในการปรับปรุงคุณภาพของ Product ของบริษัท คุณจำเป็นต้องให้คนอื่นมาช่วยประเมิน Code นั่นเอง

ถึงจุดนี้ ดูเหมือนจะยังไม่มีอะไรที่แปลกใหม่น่าสนใจในเรื่องการ Review Code แต่ก็มีสิ่งที่ต้องระวังเพราะมันมีประเด็นยังไม่ชัดเจนในหลายเรื่อง เช่น

  • จะเริ่ม Review Code อย่างไร?
  • คุณจะบอกคนอื่นอย่างไรว่า ผลการ Review Code นั้นดีหรือแย่?
  • การ Review Code นั้นควรใช้เวลานานแค่ไหน?

นี่เป็นเพียงตัวอย่างของคำถามที่คุณอาจกำลังคิดอยู่ในใจ แม้ว่าคำตอบจะไม่มีคำตอบที่ง่ายเลยสำหรับแต่ละคำถาม แต่ก็มี Guideline ที่คุณสามารถนำไปลองใช้ดูได้

หัวใจหลักก็คือ การเตรียมพร้อม

ก่อนที่จะเริ่ม Review Code คุณควรตอบ 2 คำถามนี้ให้ได้ก่อน

  1. คุณรู้หรือไม่ว่า เพื่อนร่วมงานของคุณกำลังทำงานอะไรอยู่?
  2. คุณคุ้นเคยกับ Code ที่พวกเขากำลังทำงานอยู่หรือไม่?

หากคุณไม่สามารถตอบคำถามเหล่านี้ได้ นี่คือการบ้านที่คุณต้องทำ การทำสิ่งนี้ก็เพื่อให้คุณสามารถ Review Code ได้ตามที่คุณได้เตรียมการไว้

วิธีหนึ่งในการลดช่องว่าง ก็คือการดู Ticket/ปัญหาที่มีความเกี่ยวข้องกับ Feature คุณควรหาข้อมูลให้มากเพียงพอเพื่อให้คุณทราบถึงขอบเขตและเหตุผลที่อยู่เบื้องหลังงานของ Developer เหล่านั้น นอกจากนี้หากเป็นเรื่องปกติในที่ทำงานของคุณ คุณสามารถตรวจดู Comment ใน Ticket ได้ คุณต้องการทราบว่า มีการเปลี่ยนแปลงใด ๆ ใน Ticket ที่ไม่ตรงกับสิ่งที่จะทำตั้งแต่แรกหรือไม่ และหากทุกอย่างไม่เป็นอย่างที่ควรจะเป็น ก่อนที่คุณจะเริ่ม Review Code ก็ควรขอให้สมาชิกในทีมช่วยอธิบายสิ่งที่พวกเขากำลังทำอยู่และเหตุผลที่พวกเขาทำ

สิ่งที่แนะนำให้ทำ (แม้ว่าคุณจะรู้ดีว่างานนั้นคืออะไร) ก็คือการขอให้ Developer อธิบายขอบเขตของงานด้วยตัวพวกเขาเอง เพราะวิธีนี้จะช่วยลดความเสี่ยงในเรื่องที่คุณอาจจะไม่ทราบเกี่ยวกับงานนั้น ๆ เมื่อ Developer ได้ย้ำในสิ่งที่พวกเขาทำ พวกเขาก็จะสามารถอธิบายในสิ่งที่พวกเขาทำได้ดีกว่า

ฟัง แล้วตั้งคำถาม

ในการสนทนากัน จะมี 2 ฝ่ายคือ ฝ่ายที่พูด กับ ฝ่ายที่ฟัง ซึ่งตรรกะนี้สามารถใช้กับการ Review Code ได้ พยายามอย่าขัดจังหวะDeveloper คนอื่นเพื่อจะได้ไม่ไปขัดขวางสิ่งที่พวกเขากำลังจะพูด คุณอาจจำหรือจดในสิ่งที่สำคัญ คุณจะได้เตือนตัวเองว่า ควรถามอะไรบ้างเมื่อถึงจังหวะพูดของคุณ

การ Review Code อาจใช้เวลายาวนานและน่าเบื่อ รวมทั้งมันเป็นสิ่งสำคัญที่ต้อง Focus และตั้งคำถามที่ควรถาม หากมีบางสิ่งที่คุณไม่เข้าใจ ก็ขอให้ Developer ช่วยอธิบายอย่างละเอียด ไม่จำเป็นต้องอายหากคุณไม่รู้ไปหมดทุกอย่างในทุกส่วนของ Code Base

ในการถามคำถาม ไม่เพียงคุณจะคุ้นเคยกับ Code มากขึ้นเท่านั้น แต่ยังช่วยให้ Developer มีประสบการณ์ในการอธิบายให้คนอื่นเข้าใจนสิ่งที่พวกเขาทำอีกด้วย การทำแบบนี้บ่อย ๆ จะทำให้ Developer อาจระบุ Scenario ที่พวกเขาอาจคิดไม่ถึงได้ดีขึ้น หรือคุณเองก็อาจเห็น Flow บางอย่างซึ่งเป็นต้นเหตุของ Bug ต่าง ๆ ได้

ตอนนี้คุณอาจเกิดคำถามว่า “แต่เราจะถามคำถามได้อย่างไร ถ้าเราดันมีประสบการณ์น้อยกว่า/มากกว่า Developer คนอื่น ๆ ? มันจะไม่ดูหยาบคายไปหน่อยเหรอ?” คำตอบคือ ไม่

เมื่อไม่มีการถาม ก็จะไม่มีการเรียนรู้เช่นกัน ประเด็นทั้งหมดของการ Review Code ไม่ใช่เพียงแค่การประทับตรา “Approved” ลงในงานที่ Developer ได้ทำไว้ แต่คุณจะต้องลงลึกไปถึงตรรกะของ Code และมีส่วนรับผิดชอบโครงสร้างโดยรวมของ Code ด้วย

เป็นคนที่เห็นอกเห็นใจผู่อื่น แต่ก็ต้องมีความซื่อสัตย์ด้วย

Developer ล้วนภูมิใจในงานของพวกเขา ซึ่งเช่นเดียวกับคนส่วนใหญ่ พวกเขาคงไม่ชอบฟังคนอื่นมาบอกว่า พวกเขาทำอะไรผิด สิ่งที่ควรทำ ก็คือ คุณควรพูดในมุมมองของ Reviewer (ผู้ตรวจสอบ) ไม่ใช้ที่มาคอยจับผิด

เช่นเดียวกับการชอบรสชาติของไอศกรีมที่แตกต่างกัน Developer แต่ละคนล้วนมีความคิดเห็นที่แตกต่างกันเกี่ยวกับวิธีการเขียนและ Maintain Code อย่างไรก็ตาม มีความจริงบางอย่างที่ Developer แต่ละคนต้องปฏิบัติตาม ดังนั้นเพื่อให้สิ่งต่าง ๆ ราบรื่น คุณควรแน่ใจว่า คุณได้ใช้คำพูดที่สร้างสรรค์กับพวกเขา ด้วยวิธีนี้ ก็จะไม่มีใครที่โกรธเคืองคุณ

แน่นอนว่าคุณอาจจะมีความคิดเห็นขัดแย้งบ้าง ในบางสถานการณ์ การเน้นข้อบกพร่องของ Code ที่จำเป็นต้องเขียนใหม่นั้นเป็นสิ่งสำคัญ หากคุณไม่แน่ใจ ให้ลองถาม Developer คนอื่นหรือหัวหน้าทีม แต่อย่าลืมว่าในอีกด้านหนึ่ง Developer คนอื่น ก็มีมุมมองเป็นของตัวเองเช่นกัน

สิ่งที่ต้องจดจำไว้

แม้ว่าเราจะกล่าวถึงการ Review Code แต่ก็มีบางสิ่งที่คุณควรให้ความใส่ใจมัน

  • อย่าลืมถามพวกเขาว่ามีการเพิ่ม Unit Test เข้าไปด้วยหรือไม่ ถ้าใช่ ก็ให้เข้าไปตรวจสอบด้วย
  • Documentation เป็นส่วนหนึ่งของการ Review Code (หากไม่มี ก็ให้พูดคุยถึงความสำคัญของการเพิ่มมันเข้าไป)
  • ก่อนที่จะทำการ Review Code ให้ถามความเห็น Developer ว่าจะให้เวลานานเท่าใด (เพราะจะช่วยให้คุณวางแผนการทำงานของคุณได้อย่างเหมาะสม)
  • หากมีการเปลี่ยนแปลงหลายอย่างหลังจากที่ Review Code แล้ว ก็อย่าลืมตั้งตรวจสอบในส่วนนี้ด้วยเพื่อให้การ Review ครั้งต่อไปจะได้ไม่ตกหล่นในส่วนนี้ไป
  • ควรมีความสุภาพ และรู้จักที่จะชื่นชม Developer ในสิ่งที่พวกเขาได้ทำ

การ Review Code แต่ละครั้งไม่เหมือนกัน การฝึกฝนจะช่วยทำให้ทุกอย่างดีขึ้น เชื่อสัญชาตญาณของคุณและไว้วางใจเพื่อนร่วมงานของคุณ ทุกอย่างอื่นจะตามมา

ที่มา:  https://medium.freecodecamp.org/

 

 

รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

เพิ่มเพื่อน

 

บทความล่าสุด