ตอนนี้มาลองเขียน Go กันบ้างดีกว่า ก็เขียนโปรแกรม Hello World ตามนิยม
- สร้างไฟล์ helloworld.go ใน path $GOPATH/src เช่น /Users/choopong/go บน macOS หรือ C:\Users\choopong\go บน Windows โดย path นี้จะใช้เก็บ source code ของเราทั้งหมด แต่จะแบ่ง path ย่อยตาม package
- ใส่ code ตามนี้
1 2 3 4 5 6 7 8 9
package main import ( "fmt" ) func main() { fmt.Println("Hello World") }
- run โปรแกรมโดยใช้คำสั่ง
$ go run helloworld.go
ควรจะแสดงผลลัพธ์ว่า “Hello World”
ยินดีด้วย คุณโม้ได้ว่าเคยเขียน Go ละ (“เคยเขียน” กับ “เขียนเป็น” ไม่เหมือนกันนะ) ทีนี้มาดู code กันทีละบรรทัด
1 | package main |
เป็นการประกาศว่าโปรแกรมนี้อยู่ใน package อะไร เช่น fmt โดยเงื่อนไขที่โปรแกรมที่จะ run ผ่านคำสั่ง $ go run
ได้ package จะต้องเป็น main เท่านั้น (ในการเขียนโปรแกรมจริงๆไม่จำเป็น) ลองแก้ชื่อ package เป็นชื่ออื่นแล้วทดสอบดู
3 4 5 | import ( "fmt" ) |
เป็นการบอกว่าโปรแกรมนี้จะเรียกใช้งาน pacakge อื่นอะไรบ้าง ในตัวอย่างคือ “fmt” ถ้ามีการเรียกใช้หลาย package ให้แบ่งบรรทัดละ pacakge ดังตัวอย่าง
import ( "fmt" "time" ) |
7 | func main() { |
เป็น main function โดยเงื่อนไขที่โปรแกรมที่จะ run ผ่านคำสั่ง $ go run
ได้ โปรแกรมนั้นต้องมี main function ลองแก้ชื่อ function เป็นชื่ออื่นแล้วทดสอบดู
8 | fmt.Println("Hello World") |
เป็นการเรียนใช้ function “Println” จาก package “fmt” เพื่อให้แสดงผลตามข้อความที่ระบุไปพร้อมทั้งขึ้นบรรทัดใหม่
ข้อสังเกตุ
- ไม่จำเป็นต้องมี “;” (semicolon) ท้าย statement แต่จะมีก็ได้ถ้าชอบ ลองแก้ code ทดสอบดู
- รูปแบบของ “{ }” (braces) นั้น ตัวเปิด “จำเป็น” ต้องอยู่บรรทัดเดียวกับ statement ก่อนหน้า เช่น main function ไม่สามารถเขียนแบบนี้ได้
func main() { fmt.Println("Hello World") }
ลองแก้ code ทดสอบดู
- ไม่มี Class ไม่ว่าจะ Class ของ main program หรือ Class ของ function Println ที่เราเรียกใช้
ติดตามต่อตอนหน้า มาดูโครงสร้าง file และ directory ของ Go project กัน