เรื่องของรูปแบบ code และ naming convention เป็นสิ่งที่สำคัญมาก ๆ
โดยในภาษา Go นั้นไม่ได้มีกฏเรื่องนี้มากนัก
แต่ก็ได้สร้างเครื่องมือมาตรฐานสำหรับการจัดการมาให้
นั่นก็คือ gofmt
ซึ่งนักพัฒนาภาษา Go น่าจะใช้กันทุกคน
ไม่ว่าจะพิมพ์เอง
ไม่ว่าจะให้ทำงานแบบอัตโมัติ หรือ ทำงานผ่าน Editor/IDE ต่าง ๆ
เช่นทำการจัดรูปแบบ code ให้เมื่อทำการบันทึกเป็นต้น
ผลที่ตามมาคือ
รูปแบบของ code เหมือนกัน ไม่ต้องมาเถียงกัน
และยังทำให้ code อ่านง่ายขึ้นอีกด้วย
[code]
$gofmt -w file.go
$gofmt -w target_folder
[/code]
คำอธิบาย
- -w ทำการแก้ไขและเขียนทับไปเลย
- -d แสดงสิ่งที่แตกต่างระหว่างก่อนและหลังการใช้งาน
สิ่งที่ยังขาดไปคือ เรื่องของ naming convention
นั่นคือการตั้งชื่อทั้ง variable, constant, function, struct และ interface ซึ่งก็มีเครื่องมือชื่อว่า golint มาให้ใช้งาน จะแสดงว่า รูปแบบที่เราเขียนนั้นผิดตรงไหนบ้าง ซึ่งไม่มีใน gofmt น่าจะทำให้ code ของทีมไปในทิศทางเดียวกันทั้งหมด ที่สำคัญสามารถทำงานร่วมกับ Editor/IDE ทั่วไปได้เลย Golint นั้นเป็นเครื่องมือที่ทำการตรวจสอบด้วยกฏต่าง ๆ จาก มันคือแหล่งเรียนรู้ที่ดีมาก ๆ มาลองใช้งานกันดู ติดตั้งผ่าน go get [code] $go get -u golang.org/x/lint/golint [/code] มี code ตัวอย่างง่าย ๆ ลองเดาดูสิว่า golint จะด่าอะไรบ้าง ? [gist id="37b4186c2b88d74f5ca36d4c4a967818" file="main.go"] ผลที่ได้จาก golint เป็นดังนี้ [gist id="37b4186c2b88d74f5ca36d4c4a967818" file="result.txt"] คำอธิบายเพิ่มเติม ชื่อ function ขึ้นด้วยตัวใหญ่คือ เราตั้งใจให้เป็น public หรือให้ file อื่นที่อยู่ต่าง package ใช้งานได้ ดังนั้นสิ่งที่ควรต้องทำคือ การเขียน comment เพื่ออธิบายนั่นเอง จากนั้นก็แก้ไขซะ ให้เป็นไปตามรูปแบบของตัวภาษา เพียงเท่านี้การเขียน code ก็สนุกขึ้นอีกเยอะเลยวันนี้ใช้งาน gofmt และ golint กันหรือยัง ?