มาตรฐานการตั้งชื่อตัวแปร (Naming Convention)

          หัวข้อนี้อาจทำให้หลายคนสงสัยว่า ผมเขียนขึ้นมาทำไม หลายๆคนที่ได้เรียนวิชา Programming ต่างๆก็คงถูกสอนกันมาอยู่แล้วว่า การตั้งชื่อตัวแปรต้องให้สื่อความหมาย ไม่ใช่สักแต่ว่า a,b,c; หรือ x,y,z เพราะมันจะทำให้คนที่จะมาเขียนโปรแกรมต่อจากเราทำได้ยาก ถ้าเป็นโปรแกรมเล็กๆก็พอรับได้ แต่ถ้าเป็นงานใหญ่ๆ ก็ควรลด-ละ-เลิกได้แล้วครับ

          แต่มันยังไม่หมดแค่นั้น นอกจากจะตั้งชื่อให้สื่อความหมายแล้ว ควรสังเกตลักษณะไวยากรณ์ (Syntax) ของแต่ละภาษาด้วยว่าเค้าเขียนกันอย่างไร หรือตัวอย่างตาม internet เค้าเขียนกันอย่างไร ซึ่งล้วนแต่มีที่มาที่ไปมาจากข้อตกลงร่วมกันในแต่ละภาษา หรือ เรียกว่า "Naming Convention" ซึ่งจะทำให้ชื่อแต่ละชื่อนั้น สามารถบ่งบอกความหมายได้เบื้องต้น เป็นผลดีต่อโปรแกรมเมอร์อย่างมากครับ

Hungarian Notation

          จะใช้ตัวย่อของชนิดตัวแปรขึ้นต้น โดยจะใช้ตัวอักษรตัวพิมพ์เล็กทั้งหมด ซึ่งตัวย่อจะถูกกำหนดไว้เป็นมาตรฐานเดียวกัน ทำให้การตั้งชื่อตัวแปรแบบ Hungarian Notation จะทำให้ Programmer อ่านโปรแกรมได้ง่ายขึ้น จากนั้นคำต่อๆไปตัวอักษรตัวแรกของคำจะเป็นตัวใหญ่
ตัวอย่างการตั้งชื่อตัวแปรแบบ Hungarian Notation : strName , iValue
ภาษาที่นิยมใช้ : C, C++

Camel Case (Lower Camel Case)

          เป็นการตั้งชื่อโดยกำหนดให้คำแรกเป็นตัวอักษรตัวเล็กทั้งหมด แต่ไม่ได้ใช้อักษรย่อ การตั้งชื่อแบบ Camel Case จะเป็นคำต่อกันทั้งหมด ซึ่งตัวอักษรตัวแรกของคำที่ 2 ขึ้นไป จะเป็นตัวใหญ่ (คำที่ 2 ขึ้นไปเหมือน Hungarian Notation)
ตัวอย่างการตั้งชื่อตัวแปรแบบ Camel Case : productPrice , summaryResult
ภาษาที่นิยมใช้ : Java

Pascal Case (Upper Camel Case)

          การตั้งชื่อลักษณะนี้ ต่างจาก Camel Case ตรงที่จะใช้ตัวอักษรตัวแรกของทุกคำเป็นตัวใหญ่ทั้งหมด (ตัวแรกด้วย)
ตัวอย่างการตั้งชื่อตัวแปรแบบ Pascal Case : FirstName , LastName
ภาษาที่นิยมใช้ : C#, .NET

Snake Case

          แทนที่จะแบ่งคำด้วยตัวอักษรตัวเล็กตัวใหญ่ (case sensitive) การตั้งชื่อแบบนี้จะใช้ _ (Underscore) แทน แต่การตั้งชื่อแบบนี้จะทำให้ชื่อตัวแปรยาวไปหน่อยครับ
ตัวอย่างการตั้งชื่อตัวแปรแบบ Underscores : my_variable
ภาษาที่นิยมใช้ : SQL, PHP


Upper Case

          เป็นการตั้งชื่อโดยใช้ตัวอักษรตัวใหญ่ทั้งหมด ซึ่งมักจะใช้ตัวอักษรย่อ หากเขียนเป็น Upper Case แบบหลายๆคำแบบ Camel Case หรือ Pascal Case จะทำให้เกะกะตาเป็นอย่างมาก
ตัวอย่างการตั้งชื่อตัวแปรแบบ Upper Case : ID , PI
ภาษาที่นิยมใช้ :

แหล่งข้อมูล :
http://www.unzeen.com/article/1342/ว่าด้วยมาตรฐานในการตั้งชื่อตัวแปร
thaioop.wordpress.com/2006/12/07/ตอน-17-หลักการตั้งชื่อในภ/
http://en.wikipedia.org/wiki/CamelCase
http://en.wikipedia.org/wiki/Hungarian_notation
http://c2.com/cgi/wiki?CamelCase
http://www.tizag.com/phpT/variable.php

Facebook Comment

Popular post of 7 days

[Java] ความแตกต่างระหว่าง Overloading กับ Overriding

ลืมรหัสปลดล็อค Android เข้าเครื่องไม่ได้ มีทางออกครับ

[Android] เปิดเครื่องไม่ได้ โลโก้ค้าง (Boot Loop)