7 Styles การ Coding ที่ล้าสมัยไปแล้ว

16-ต.ค.-20

คัมภีร์เทพ IT

หากคุณเขียน Code มานานหลายปี คุณอาจมี Style ที่ชื่นชอบ ซึ่งคุณก็คงชอบที่จะใช้ Style การ Coding แบบนั้น แต่บทความนี้จะมาบอกถึง 7 Styles การ Coding ที่ล้าสมัยไปแล้ว แต่ขณะเดียวกันก็มี Style ใหม่ที่น่าสนใจที่คุณสามารถใช้ทดแทนหรือนำไปปรับใช้ในงานของคุณ

1. ใช้ m หรือ this ในการระบุ Member Variables

Rule: ในการแยกแยะ Member Variables ออกจาก Local Variables ให้ใช้ข้อใดข้อหนึ่ง ดังต่อไปนี้

  • ให้ใช้ Hungarian Notation เช่น mMemberVariable กับ localVariable โดยที่ m หมายถึง Member Variables
  • ให้ใช้ this เช่น this.memberVariable กับ localVariable

เหตุผลที่ใช้แบบนี้

เหตุผลก็คือ เมื่อเราอ่าน Code เราจะสามารถทราบได้อย่างง่ายดายว่า มันเป็น Member Variables หรือ Local Variables โดยที่ไม่ต้องดูไปที่การ Declaration

Style การ Coding ใหม่

สำหรับ IDE สมัยใหม่นั้น เราไม่จำเป็นต้องใช้ความแตกต่างของตัวอักษรอีกต่อไป ลองดูที่ Code เดียวกันด้านล่างนี้ มันจะแสดงสีที่ต่างกันให้โดยอัตโนมัติ

2. การ Declare ว่าเป็น Public, Protected หรือ Private ให้ชัดเจนอยู่เสมอ

Rule: Variables และ Functions ทั้งหมด ภายใน Class จะต้องถูกระบุไว้อย่างชัดเจนว่าเป็น Public, Private หรือ Protected อย่าคิดว่ามันจะ ระบุสถานะเริ่มต้นไว้ให้

  • จำเป็นต้องระบุสถานะอย่างชัดเจน เช่น String หรือ Int
  • จำเป็นต้องระบุสถานะว่ามันเป็น Private หรือ Public

เหตุผลที่ใช้แบบนี้

เพื่อหลีกเลี่ยงไม่ให้ใครบางคนเข้าถึง Functions หรือ Variables เหล่านั้นอย่างไม่ถูกต้อง นั่นคือ หาก Function ไม่ได้ถูก Declare ไว้ก่อน User อาจไม่ทราบถึง Default State ว่าเป็นแบบ Public หรือ Private 

Style การ Coding ใหม่

ด้วย IDE ในสมัยใหม่ เราไม่จำเป็นต้อง Declare ค่า Default อย่างชัดเจน อย่างเช่น สำหรับ Kotlin แล้วจะเป็น Public ซึ่งจะทำให้ User ไม่ทำผิดพลาดเกี่ยวกับ Default State โดยไม่ได้ตั้งใจ เนื่องจาก Auto-Complete จะแสดงเฉพาะ Public Methods เท่านั้น จึงไม่น่าจะมีใครสับสนว่า Default State คืออะไร

หากมีการใช้งานที่ผิดพลาดเกิดขึ้น (เช่น การ Access Private Function) ก็จะไม่เกิด Error เฉพาะในช่วง Compile เท่านั้น แต่มันจะแสดง Error ทันทีด้วย Message ที่ชัดเจน

3. การ Declare Type ของ Variable ทุกครั้ง

Rule: ควรทำการ Declare Variables ทั้งหมดพร้อม Type ของพวกมัน แม้ว่าค่าที่กำหดนไว้จะมีความชัดเจนก็ตาม เช่น จำเป็นต้องระบุ Type อย่างชัดเจนว่าเป็น String หรือ Int

เหตุผลที่ใช้แบบนี้

เพื่อหลีกเลี่ยงไม่ให้ใครบางคนเข้าถึง Functions หรือ Variables เหล่านั้นอย่างไม่ถูกต้อง เช่น Variable ถูกกำหนด Type ให้ผิด และทำให้เกิด Error ในการ Compile

Style การ Coding ใหม่

สำหรับภาษา Programming สมัยใหม่ ไม่จำเป็นต้องระบุ Type ของ Variable อย่างชัดเจนถ้ามันชัดเจนและไม่คลุมเครือ สิ่งนี้เรียกว่า Type-Inference ซึ่งในปัจจุบันมีอยู่ในภาษา Programming สมัยใหม่หลายภาษา

แม้จะมีการ Assign ที่ผิดพลาด ก็จะไม่เกิด Error ในการ Compile เท่านั้น แต่มันจะแสดง Error ทันทีด้วย Message ที่ชัดเจน

4. Member Variable ควรจะเป็น Private เสมอ

Rule: Member Variable ทั้งหมดควรจะเป็น Private และควรถูกเข้าถึงผ่านการใช้ Getter และ Setter ซึ่งเป็นการใช้กับ Member Variable ที่ต้อง Set หรือ Get จากภายนอก

เหตุผลที่ใช้แบบนี้

หากเรากำหนดให้เป็น Public สำหรับการ Set และ Get ในกรณีที่เราจำเป็นต้องดำเนินการบางอย่างเมื่อมีการ Set หรือ Get เราจำเป็นต้องเปลี่ยน Code ทั้งหมดเพื่อเข้าถึง Code นั้น

ดังนั้น ถ้าเราจำกัดการ Set และ Get เราก็จะควบคุมพวกมันได้ เช่น

Style การ Coding ใหม่

ในภาษา Programming สมัยใหม่ (อย่าง Kotlin) เราสามารถแทรก Variable Getter หรือ Setter ลงใน Variable ได้อย่างง่ายดายเมื่อต้องการโดยที่ไม่ต้องมี Function ที่แตกต่างกัน 2 Functions อย่างอย่างชัดเจนเพื่อการ Set และ Get

ดังนั้น เราจึงสามารถเขียน Code ได้ดังนี้ โดยไม่ต้องมี Functions Setter และ Getter เพิ่มเข้ามาใน Class

เมื่อเราต้องการทำอะไรบางอย่าง กับ Setter หรือ Getter เราสามารถเพิ่มพวกมันเข้าไปได้อย่างง่ายดายโดยไม่จำเป็นต้องเปลี่ยน Code ที่ใช้เข้าถึง Members แต่อย่างใด

5. วงเล็บปีกกาเปิดและปิด ควรอยู่แนวเดียวกัน

Rule: วงเล็บปีกกาทั้งหมดควรอยู่ในแนวเดียวกัน เพื่อที่เราจะได้หาคู่ของมันได้ง่ายขึ้น เช่น

เหตุผลที่ใช้แบบนี้

การมองในแนวตั้ง จะช่วยทำให้เราสามารถหาคู่ของพวกมันได้อย่างง่ายดาย ดังนั้น เราจึงรู้ว่าขอบเขตของ Function นั้นอยู่ตรงไหน 

Style การ Coding ใหม่

ด้วย IDEs สมัยใหม่ ตราบเท่าที่ Code ยังดูง่าย เราก็ไม่จำเป็นต้องจัดวงเล็บปีกกาเปิดและปิด ให้อยู่ในแนวเดียวกันอีกต่อไป

นั่นเป็นเพราะ เราสามารถ Collapse หรือ Expand ได้อย่างง่ายดาย ดังที่แสดงให้เห็นด้านล่างนี้:

6. ใช้ Tab สำหรับการเยื้องทั้งหมด

Rule: ใช้ Tab สำหรับการเยื้องทั้งหมดแทนที่จะใช้ Space 

เหตุผลที่ใช้แบบนี้

สิ่งนี้จะช่วยลดจำนวนการพิมพ์ที่ต้องใช้ เช่น จากด้านล่างนี้ จะแสดงให้เห็นการใช้ Space ซึ่งทำให้ต้องเคาะ Keyboard หลายครั้ง

 

Style การ Coding ใหม่

ด้วย IDEs ที่มี มันจะทำการเยื้องให้เราโดยอัตโนมัติด้วยจำนวน Space ที่เหมาะสม และการมี Space จะช่วยทำให้แน่ใจว่า Code ทั้งหมด ดูสอดคล้องกันในทุก Environments ของ Users 

7. ใช้ Semicolon เพื่อปิด Code Statement

Rule: เมื่อสิ้นสุด Code Statement จำเป็นต้องมี Semicolon หรือเครื่องหมาย ;

เหตุผลที่ใช้แบบนี้

เครื่องหมายนี้จำเป็นต้องใช้ในภาษา Programming ในสมัยก่อนทั้งภาษา C และ C++, Java เป็นต้น เพื่อเป็นการบอกว่า Statement นั้นจบแล้ว ส่วนหนึ่งอาจเป็นเพราะ เรามี 80 Columns ดังนั้น เมื่อต้องการ Code Statement เพิ่มเติม เราก็สามารถเขียน Code Statement ได้หลายบรรทัด

Style การ Coding ใหม่

ด้วยภาษาสมัยใหม่ที่ทันสมัย (อย่าง Kotlin) ความจำเป็นในการเขียน Code ที่เป็น Statement ยาว ๆ ไม่ใช่ Trend ที่นิยมเท่าไรนัก (เช่น เราสามารถตั้งชื่อ Variable ให้สั้นลงและลดการเยื้องลงได้)

แม้ว่าเราจะต้องเขียน Code ที่เป็น Statement ยาว ๆ เราก็ไม่ถูกจำกัดด้วย 8 Columns อีกต่อไป (แม้ว่าจะไม่ใช่แนวทางปฏิบัติที่ดีก็ตาม) นอกจากนี้จอ Monitor ของเราในปัจจุบัน ก็มีความยาวมากขึ้น

ดังนั้น หากภาษาใดที่ไม่บังตับให้เราต้องใส่ Semicolon เราก็ไม่ต้องใส่

ด้วยการเปลี่ยนความเชื่อของ 7 Coding Styles ในข้างต้น เราลองมาดูความเปลี่ยนแปลงของ Code ตามด้านล่างนี้กัน

โลกมีการเปลี่ยนแปลงตลอดเวลา สิ่งที่จำเป็นต้องใช้ในอดีต อาจไม่เกี่ยวข้องกับปัจจุบันอีกต่อไป ด้วย Technology และ Tools ต่าง ๆ เราควรประเมินกฎต่าง ๆ ที่เคยใช้อยู่เสมอ และปรับตัวตามการเปลี่ยนแปลงที่เกิดขึ้น

ที่มา:  https://medium.com/

 

 

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

 

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

เพิ่มเพื่อน

 

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