2008/Oct/15

      มีคำถามว่าทำไมเวลาที่เรานั้งเขียน code แล้วต้องมี Standard ด้วย เพราะน่าจะใครสะดวกยังไงก็น่าจะเขียนยังงั้น น่าจะเน้นไปที่ output และ Algorithm มากกว่า สำหรับผมเองก็ต้องตอบว่าส่วนหนึ่ง การเขียน code ที่ดีนั้นต้องให้คนอื่นอ่านได้ง่าย และใช้เวลาในการแก้ไข ปรับปรุง ทำความเข้าใจได้อย่างรวดเร็ว  จึงจำเป็นมีมาตรฐานเข้ามาควบคุม แต่ก็ยังมีคำถามขึ้นมาอีก แล้วอะไรล่ะที่เรียกว่ามาตรฐาน  ตรงนี้เองจึ่งอยากค้นคว้าและนำมาเขียน Blog ตามความคิดของตัวเอง และยินดีน้อมรับคำแนะนำจากผู้รู้  

     การตั้งชื่อ หรือ การประกาศตัวแปร (Naming Conventions) 

  1. ควรจะตั้งชื่อแบบ Camel Case หรือ Pascal Case เช่น
      string CustomerName   //Pascal Case
      string customerName   //Camel Case  
  2.  ควรจะหลักเลี่ยงการตั้งชื่อที่ประกอบไปด้วยตัวใหญ่ทั้งหมด หรือ ตัวเล็กทั้งหมด หรือ ตัวอักษรตัวเดียว
  3. ไม่ควรประกาศตัวแปรที่เหมือนกับชนิดข้อมูล (namespace,class,method,property ..)
  4. ไม่ควรตั้งชื่อตัวเลขนำหน้าชื่อ เช่น string 1customer 
  5. ควรตั้งชื่อที่สื่อความหมาย
  6. ไม่ควรใช้ Hungarian Notation เช่น  string strName   หรือ  int iCount 
  7. หลีกเลี่ยงการตั้งชื่อที่เป็นตัวย่อจำนวนมาก หรือ ตั้งชื่อที่มีขนาดยาวเกินกว่าที่จะรับได้
  8. ถ้าหากจำเป็นต้องตั้งชื่อเป็นตัวย่อ ควรตั้งเป็นตัวพิมพ์ใหญ่ ถ้ามีขนาดแค่ 2 ตัวอักษร ถ้ามากกว่านั้นให้ตั้งชื่อแบบ  Pascal Case
  9. ไม่ควรตั้งชื่อเป็นคำสงวน (C# Reserved Word)
  10. ไม่ควรตั้งชื่อด้วยคำที่ซ้ำซากไม่มีความหมาย เช่น
    public enum ColorsEnum {…}
    public class CVehicle {…}
    public struct RectangleStruct {…}
  11. ไม่ควรมีคำที่เป็น parent class ในชื่อ property name  เช่น
    Customer.Name ไม่ควรใช้ Customer.CustomerName
  12. พยายามตั้งตัวแปรที่เป็น Boolean ด้วยคำว่า "Is" , "Can"  หรือ "Has"
  13. ถ้าเป็นเรื่องที่เกียวกับการคำนวณ ควรตั้งชื่อเป็น  "Min" , "Max", "Average" หรือ ตามความเหมา่ะสม
 
  Name Usage & Syntax

 

Comment

Comment:

Tweet


snippet.googalz.com
View full profile