ในยุคดิจิตัลที่ทุกอย่างดูจะรวดเร็วและมีการแข่งขันสูง ทำให้ Programmer มีการใช้ตัวเลือกเพื่อช่วยอำนวยความสะดวกในการทำงานมากขึ้นไม่ว่าจะเป็น Framework, Library หรือจำนวนภาษา Programming ที่จะเลือกใช้ จนบางครั้งก็ลืมสิ่งที่สำคัญไป การใช้เครื่องมือสำเร็จรูปมากเกินไปหรือทำอะไรรีบเร่งเกินไป ก็อาจทำให้เกิดผลกระทบร้ายแรงได้ มาดูกันว่า 7 ข้อผิดพลาด ที่ควรหลีกเลี่ยงใน Programming มีอะไรบ้าง
1. ไม่ใช้ Version Control System เมื่อทำงานกันเป็นทีม
ตอนนี้คงจะพูดได้ว่า Programmer/Developer คงจะอยู่ยากขึ้นหากไม่มีเครื่องมือที่ใช้จัดการในเรื่อง Source Control อย่าง Git เพราะ พวกมันทำให้การทำงานง่ายขึ้นมากเมื่อต้องทำงานร่วมกันเป็นทีม
ลองนึกภาพดูว่า หากคุณต้องทำการตวจสอบและ Merge File ด้วยตัวเอง ต้องสร้าง Folder ที่ต่างกันเพื่อเก็บ Version ต่างๆ ของ Code การทำแบบนี้ดูจะไม่ค่อยมี Productivity และไม่ค่อยน่าเชื่อถือสักเท่าไรนัก เนื่องจากอาจเกิดความผิดพลาดได้ง่าย แต่โชคดีที่เรามี Git และ Version Control อื่นๆ เป็นทางเลือก เชื่อว่าใครที่ทำ Project ใหญ่ที่ต้องทำงานกันหลายๆ คนแต่ไม่ใช้พวก Version Control เลย อาจจะเคยเจอกับผันร้ายมาบ้างแล้วแน่ๆ
2. ไม่ใช้ชื่อตัวแปรที่เหมาะสม
นี่ดูเป็นเรื่องพื้นฐานง่ายๆ แต่เชื่อไหมว่ามี Programmer หลายคนที่ชอบใช้ตัวอักษรตัวเดียว สั้นๆ ตั้งเป็นชื่อตัวแปรอยู่ เช่น a, b, c, d เป็นต้น การทำแบบนี้มันอาจไม่มีปัญหาหากคุณมี Code แค่ 10-20 บรรทัด แต่หากคุณทำงานเป็น Project ใหญ่ๆ เชื่อว่ามันเกิดปัญหาแน่ๆ การตั้งชื่อตัวแปรที่ไม่เหมาะสม ถือเป็นตัวสร้างปัญหาหลักในเรื่องของ Readability และ Productivity
กฎพื้นฐานของการตั้งชื่อตัวแปร คือ ชื่อของตัวแปรเหล่านั้นควรอธิบายได้ว่าพวกมันคืออะไร หรือเอาไว้ทำอะไร แต่คงไม่ต้องถึงขั้นตั้งชื่อให้สื่อความหมายด้วยความยาวถึง 50 อักษรหรอก แค่ทำให้สั้น แต่ยังคงอ่านง่ายและเข้าใจได้ก็พอ
3. ใช้การพึ่งพามากเกินไป และอัปเดตด้วยความไม่รอบคอบ
คุณคิดว่ามี Open Source Libraries อยู่จำนวนเท่าไร บน GitHub? คำตอบคือมากมายนับไม่ถ้วน Library เหล่านี้ช่วยทำให้ Developer ทำงานได้ง่ายขึ้นมาก ช่วยให้พวกเขาไม่ต้องเหน็ดเหนื่อยมากจนเกินไป
แต่การพึ่งพาสิ่งอำนวยความสะดวกเหล่านี้ ก็อาจทำให้เกิดผลเสียหายอย่างมากต่อ Code ได้เช่นกัน ซึ่งการใช้การพึ่งพามากเกินไปในที่นี้ อาจหมายถึงการ Compile และ Run Time ที่ช้าลง ใช้ Library ได้เท่าที่คุณเห็นว่ามันจำเป็นต้องใช้ แต่อย่าใช้ Library เพียงเพื่อเห็นว่ามันมีประโยชน์ (ซึ่งจริงๆ คุณอาจไม่ได้ใช้งานมันเลย)
นอกจากนี้ให้ตรวจสอบการ Support ของ Library/Plugin ที่ใช้ทุกครั้งก่อนทำการ Update เสมอ เพราะมันอาจส่งผลกระทบกับ Code ได้ และคุณอาจต้องพบกับปัญหาที่ร้ายแรงได้เช่นกัน
4. ไม่มีการอธิบาย Code ที่เขียนไว้
คงไม่มีใครอยากนั่งไล่อ่าน Function หรือ File ทั้งหมดเพื่อทำความเข้าใจว่าพวกมันทำอะไร การเขียน Code ด้วยจำนวนบรรทัดน้อยๆ หรือ Code สั้นๆ มันอาจทำให้คุณดูเจ๋ง แต่อย่าทำให้ คนอื่นที่ต้องมาทำงานต่อจากคุณ หรือแม้แต่ตัวคุณเองที่กลับมาอ่าน Code ที่เคยเขียนไว้ ต้องรู้สึกงงหรือรู้สึกไม่ดีกับ Code ที่เขียนในวันนี้เลย
เราควรพยายามเขียนคำอธิบาย Code ไว้ด้วยเสมอ ในขั้นแรก ควรทำให้ผู้อ่าน Code เข้าใจประเด็นสำคัญของสิ่งที่เกิดขึ้นให้ได้ก่อน สิ่งนี้อาจเกี่ยวข้องกับ code refactoring, การใช้ uniform syntax รวมทั้งการใช้ชื่อตัวแปรที่เหมาะสม ใส่ Comment ลงในทุกที่ที่เห็นว่า “จำเป็น” แต่ไม่ต้องถึงขั้นเขียนอธิบาย Code กันทุกบรรทัด อาจจะเขียน Comment สัก 1-2 บรรทัด เพื่ออธิบายหรือ Note เกี่ยวกับสิ่งที่สำคัญๆ ของ Code ใน Part นั้นๆ ก็น่าจะเพียงพอแล้ว
5. ไม่จัดรูปแบบ Code ให้เหมาะสม
ข้อนี้ก็ถือว่ามีความเกี่ยวเนื่องกับข้อด้านบน เพราะการจัดรูปแบบของ Code ที่ไม่ดี ก็ส่งผลกับเรื่องของ Readability และ Productivity จงสร้างข้อตกลงหรือข้อกำหนดการตั้งชื่อใน Project ที่คุณต้องทำ และให้ยึดถือตามนั้น อย่าเปลี่ยนสไตล์ในระหว่างที่คุณเขียน Code เช่น บางคนชอบใช้ตัวพิมพ์ใหญ่สำหรับชื่อ File และ Camel Case สำหรับ Function, Variable เป็นต้น แต่สิ่งสำคัญคือ มันอาจแตกต่างกันไปตามภาษาที่คุณใช้ด้วย ดังนั้น จงพิจารณาให้ดีก่อนจะตัดสินใจเลือกข้อกำหนดการตั้งชื่อ
นอกจากนี้ให้ใช้สไตล์เดียวกันทั้งหมดใน Code สำหรับการเยื้อง/ย่อหน้าด้วย จงกำหนดรูปแบบให้เหมาะสมตามสไตล์และภาษาที่คุณใช้งานด้วย
6. ไม่มีการจัดการกับ Error ที่ดีพอ
ไม่ว่าคุณจะเป็น Developer ที่ดีแค่ไหนก็ตาม เว้นแต่ว่าการทำงานของคุณจะทำเพียงแค่ console.log (“ Yey”) หรือ printf (“ Wow”) มันก็มีโอกาสที่ Code ของคุณจะหยุดทำงานได้
มันอาจจะเกิดจาก API Error, Timeout, Data Type Mismatch, Null Value หรืออะไรก็ตาม แต่บ่อยครั้งที่พบว่า Code ของคุณบางส่วนอาจมีปัญหา
การจัดการ Error อาจแตกต่างกันไป ซึ่งขึ้นอยู่กับภาษาที่คุณใช้งาน แต่กฎทั่วไปคือ จะต้องสอดคล้องกับการ Implementing Null Checks ก่อนที่จะเข้าถึงข้อมูล เพราะส่วนใหญ่พวกมันมักทำให้ Code ไม่ทำงาน
ดังนั้น เมื่อใดก็ตามที่ต้องทำงานเกี่ยวกับ Data ขอแนะนำให้คุณใส่ Code ของคุณลงใน Try-Catch Blocks และจัดการกับ Exceptions ทุกครั้ง อย่าลืมแจ้งให้ User ทราบด้วยว่า มีบางอย่างที่ผิดปกติ เพราะคงไม่มีอะไรที่น่าผิดหวังไปกว่าการกดปุ่มหรือ Key อะไรลงไป แล้วไม่ได้รับคำตอบใดๆ กลับมา
7. มีการเลือก Data Types และ Data Structures ที่ไม่ดี
นี่คือสิ่งที่เห็นได้ชัดเจนมากในบางภาษา (คุณลองอ่าน strongly typed กับ weakly typed ดู) บางภาษาจะไม่ยอมให้คุณ Compile Code หากมี Type ไม่ตรงกัน(Type Mismatch) แต่บางภาษาก็เกิดปัญหาในช่วง Runtime
ตัวอย่างที่มักจะพบบ่อยของหัวข้อนี้ เช่น เมื่อค่าของตัวเลขถูกเก็บเป็น Integer / Float / Double เป็นต้น กับ เมื่อเก็บเป็น String ในบางภาษาจะทำการแปลงชนิดของข้อมูลให้โดยอัตโนมัติ ในขณะที่ภาษาอื่นๆ บางภาษาจะเกิด Error ทันที
สรุป
นี่เป็นเพียงข้อผิดพลาดทั่วไปที่มักเกิดขึ้นใน Programming และถือเป็นสิ่งที่ไม่ควรเกิดขึ้น เชื่อว่าแม้แต่ตัวคุณเองหรือร่วมงานงานของคุณเองก็คงเคยทำอย่างน้อย 1 ใน 7 ข้อผิดพลาดด้านบนมาบ้างแล้ว ดังนั้น เมื่อรู้แล้วก็จงหลีกเลี่ยงข้อผิดพลาดดังกล่าว
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 28 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่
Source: https://hackernoon.com/