First Application {3/100}
Hal pertama yang harus kita lakukan ketika membuat program di Golang adalah memilih/menentukan package path nya, disini kita akan menggunakan github.com/user/hello. Kita bisa mengganti user dengan username Github kita.
Pertama kita harus membuat package direktori(hello) tersebut di workspace kita
> mkdir $GOPATH/src/github.com/user/hello
Setelah membuat package direktori mari kita buat file bernama hello.go (go source) di package direktori tersebut
> cd $GOPATH/src/github.com/user/hello
> touch hello.go
Dan isi file go source kita seperti ini
package main
import "fmt"
func main() {
fmt.Printf("Hello, world.\n")
}
Disana kita mengimport package fmt, package tersebut berguna untuk formatted I/O, seperti printf dan scanf yang ada di bahasa C. Lalu di dalam main function kita menggunakan Printf dari package fmt untuk mengeluarkan output Hello, world.
Sekarang kita bisa membuild dan menginstall program kita dengan Go tool
> go install github.com/user/hello
Kita bisa menjalankan command tersebut dari mana saja di sistem kita, Go tool akan menemukan source code kita dengan mencari package direktori kita (github.com/user/hello) yang ada di dalam workspace kita yang telah di spesifikasikan oleh GOPATH.
Kita juga bisa tidak menggunakan package path jika kita menjalankan go install dari package direktori kita (github.com/user/hello).
> cd $GOPATH/src/github.com/user/hello
> go install
The go tool will only print output when an error occurs, so if these commands produce no output they have executed successfully.
You can now run the program by typing its full path at the command line:
Command tersebut akan memproduksi sebuah binary yang bisa dieksekusi dan menginstall binary tersebut ke bin direktori yang ada di workspace kita dengan nama hello.
You can now run the program by typing its full path at the command line:
Sekarang kita bisa menjalankan program kita dengan megetikan full pathnya di command line
> $GOPATH/bin/hello
Hello, world.
Apabila ada kesalahan atau kekurangan, silahkan dikoreksi, because I’m not a Golang expert, I’m only a man in a silly red sheet.