/ 365วันแห่งโปรแกรม

[365 วันแห่งโปรแกรม #day30] Constant

วันที่สามสิบของ ‪#‎365วันแห่งโปรแกรม‬ และแล้วก็เข้าสู่วันที่สามสิบของโครงการแล้วครับ ผ่านไปประมาณ 8.22% แล้วก็จริง แต่หนทางข้างหน้ายังอีกยาวไกล >< วันนี้เราจะมีคุยกันเรื่องค่าคงที่ หรือ Constant นั่นเอง


Constant คืออะไร?

ถ้าพูดถึงค่าคงที่ หรือ Constant เราก็มักจะนึกถึงพวกค่า π, e, i หรือค่าอื่นๆ ในคณิตศาสตร์กัน ในทางโปรแกรมมิ่งก็เป็นความหมายเดียวกันครับ คือเป็นค่าที่ไม่สามารถเปลี่ยนแปลงได้ ซึ่งทางในโปรแกรมมิ่งหมายถึงตัวแปรที่เปลี่ยนแปลงค่าไม่ได้ในตอนรันไทม์นะครับ ไม่ใช่แก้โค้ดไม่ได้ (อันนั้นก็เกินไป 5555)

จะสร้างตัวแปรแบบ Constant ได้อย่างไร?

โดยทั่วไปแล้วภาษาโปรแกรมมักจะมี keyword สำหรับใช้ระบุว่าตัวแปรนี้เป็น Constant ให้ครับ ส่วนใหญ่ก็จะเป็นคำว่า const หรือ final ประมาณนี้ เราก็แค่เอาไปวางไว้หน้าส่วนทีประกาศตัวแปรที่ต้องการ แต่มีข้อแม้อย่างนึงว่าตอนประกาศตัวแปรต้องใส่ค่าให้มันทันที เช่น

const float PI = 3.1415927;
const string END_POINT = "localhost:3000";

จากตัวอย่างนี้เป็นการประกาศค่า Constant 2 ตัวครับ ตัวแรกคือ PI เป็น float กับอีกตัวคือ END_POINT เป็น string

เอา Constant ไปใช้ทำอะไรดี?

ปกติแล้วเราจะใช้ Constant กับฟิลด์ที่ไม่มีการเปลี่ยนแปลงค่าครับ เพื่อให้คอมไพเลอร์รู้ว่าค่านั้นจะไม่ถูกเปลี่ยนตอนรันไทม์ ซึ่งทำให้เราเขียนโปรแกรมได้อย่างถูกต้อง เพราะถ้าไปเผลอเปลี่ยนค่าให้ Constant ในส่วนอื่น คอมไพเลอร์มันจะฟ้องว่าไม่ได้นะ ห้ามเปลี่ยน ตัวอย่างของค่าที่ไม่ถูกเปลี่ยนตอนรันไทม์ก็เช่น End Point ของ Service ที่จะเชื่อมต่อ เลขเวอร์ชันของแอพ ค่าคงที่ที่ใช้ในสูตรคำนวณ เป็นต้น

มีหลักการตั้งชื่อไหม?

โดยทั่วไปภาษาโปรแกรมส่วนใหญ่แนะนำให้ตั้งชื่อแบบเดียวกับตัวแปร แต่ให้เป็น Upper case ทั้งหมดแล้วคั่นระหว่างคำด้วย Underscore ครับ

‪#‎day30 #365วันแห่งโปรแกรม ‪#‎โครงการ365วันแห่ง‬...