1 โครงสร้างพื้นฐานของโปรแกรม Go
โปรแกรม Go จะเริ่มต้นด้วยการประกาศแพ็คเกจ ตามด้วยการนำเข้าแพ็คเกจที่จำเป็น การประกาศตัวแปรระดับแพ็คเกจ ค่าคงที่และการประกาศชนิด และในท้ายที่สุดคือฟังก์ชันที่มีอยู่ภายในแพ็คเกจ ดังตัวอย่างของ "สวัสดี, โลก" ต่อไปนี้คือโครงสร้างพื้นฐานของโปรแกรม Go:
package main // ประกาศแพ็คเกจ main, แสดงถึงโปรแกรมที่สามารถทำงานอย่างอิสระ
import "fmt" // นำเข้าแพ็คเกจ fmt ที่มีฟังก์ชันสำหรับการนำเอาและการแสดงผล
// ฟังก์ชัน main, จุดเริ่มต้นของโปรแกรม
func main() {
fmt.Println("สวัสดี, โลก!") // แสดงผล "สวัสดี, โลก" ไปยังทีอีเอ็มเอล
}
แนวคิดและวัตถุประสงค์ของแพ็คเกจ
ใน Go language, แพ็คเกจคือชุดของไฟล์ต้นฉบับ Go หลายๆ ไฟล์และทำหน้าที่เป็นกลไกการนำโค้ดระดับสูง ใน Go แต่ละไฟล์ต้องอยู่ในแพ็คเกจ และชื่อแพ็คเกจควรเป็นเหมือนกับชื่อไดเรกทอรีที่ไฟล์นั้นอยู่
กฎของการตั้งชื่อไฟล์โค้ดต้นฉบับ
การตั้งชื่อของไฟล์โค้ดต้นฉบับของ Go โดยทั่วไปจะตามตัวพิมพ์เล็กและไม่มีช่องว่างหรืออักขระพิเศษ เช่น hello_world.go
ชื่อของไฟล์ต้นฉบับไม่จำเป็นต้องสอดคล้องกับชื่อของแพ็คเกจ แต่คำแถลงแพ็คเกจในไฟล์ทุกไฟล์ภายในแพ็คเกจเดียวกันควรมีชื่อแพ็คเกจที่สอดคล้องกัน
การใช้คำอธิบายในโปรแกรม
ใน Go language, คำอธิบายมีทั้งสองลักษณะ: คำอธิบายบรรทัดเดียวที่เริ่มต้นด้วย //
และ คำอธิบายหลายบรรทัดที่เริ่มต้นด้วย /*
และจบด้วย */
เนื้อหาของคำอธิบายนั้นจะไม่ถูกนำเข้ารหัสโดยคอมไพเลอร์
// นี่คือคำอธิบายบรรทัดเดียว
/*
นี่คือคำอธิบายหลายบรรทัด
ซึ่งขยายออกมาจากบรรทัดหลายๆ บรรทัด
*/
2 ฟังก์ชัน main และจุดเริ่มต้นของโปรแกรม
ในโปรแกรม Go, ฟังก์ชัน main
ถูกออกแบบเป็นพิเศษเพื่อเป็นจุดเริ่มต้นของโปรแกรม เรันไทม์ของ Go จะเรียกใช้ฟังก์ชัน main
ในแพ็คเกจ main โดยอัตโนมัติเพื่อเริ่มการประมวลผลของโปรแกรม
package main
import "fmt"
func main() {
fmt.Println("สวัสดี, โลก!")
}
ฟังก์ชัน main
ไม่รับอาร์กิวเมนต์และไม่มีค่าส่งคืน เมื่อฟังก์ชัน main
ประมวลผลเสร็จแล้ว โปรแกรมจะหยุดทำงานโดยอัตโนมัติ หากต้องการส่งค่าสถานะเมื่อโปรแกรมปิด ควรใช้ฟังก์ชัน os.Exit
3 การสร้างและเรียกใช้โปรแกรม
การใช้คำสั่ง go build
การเรียกใช้คำสั่ง go build
จะคอมไพล์ไฟล์โค้ดต้นฉบับและสร้างไฟล์ที่สามารถได้รับการเรียกใช้ได้ ในเทอร์มินอล, เข้าไปที่ไดเรกทอรีที่มีไฟล์โค้ดต้นฉบับและรันคำสั่งต่อไปนี้:
go build hello_world.go
หลังจากการดำเนินการเรียบร้อย, คุณจะเห็นไฟล์ที่สามารถได้รับการเรียกใช้ชื่อ hello_world
(หรือ hello_world.exe
บน Windows) ในไดเรกทอรีย์ปัจจุบัน
การใช้คำสั่ง go run
คำสั่ง go run
จะคอมไพล์และเรียกใช้โปรแกรม Go ซึ่งเหมาะสำหรับการทดสอบและการพัฒนาอย่างรวดเร็ว ในการรันโปรแกรม Hello World, คุณสามารถป้อน:
go run hello_world.go
หลังจากการดำเนินการคำสั่งนี้, คุณควรจะเห็นผลลัพธ์ "สวัสดี, โลก!" ในเทอร์มินอล
4. ผลลัพธ์ของโปรแกรม
ในโปรแกรม Go, ฟังก์ชัน Println
ที่มาจากแพ็คเกจ fmt
สามารถใช้เพื่อแสดงข้อมูลไปยังทีอีเอ็มเอล ต่อไปคือตัวอย่างโค้ดที่แสดงผล "สวัสดี, โลก!" ไปยังทีอีเอ็มเอล
package main
import "fmt"
func main() {
fmt.Println("สวัสดี, โลก!") // แสดงผลไปยังทีอีเอ็มเอล
}
หลังจากการดำเนินการโปรแกรม, ผลลัพธ์สามารถดูได้โดยตรงในเทอร์มินอล นอกจากรายการผลลัพธ์ที่ซับซ้อนมากขึ้นสามารถถูกสร้างโดยใช้แพ็คเกจ log
หรือโดยการปรับปรุงไหลข้อมูลมาตรฐาน os.Stdout
import "os"
os.Stdout.WriteString("สวัสดี, โลก!\n") // ปรับปรุงไหลข้อมูลมาตรฐานโดยตรง
```go
import "log"
log.Println("สวัสดี, โลก!") // ใช้แพ็คเกจ log สำหรับการแสดงผล ซึ่งรวมถึงข้อมูลวันที่และเวลา
วิธีพื้นฐานเหล่านี้เป็นวิธีการสื่อสารที่สำคัญและใช้กันอย่างแพร่หลายสำหรับการแก้ปัญหาโปรแกรมเพื่อพิมพ์ข้อมูลสำคัญ