go run ve go build
- Go kursu
- Başlangıç
- Ders 4/90
- 4 dk
go run ile çalıştırmayı ve go build ile derlemeyi öğrenirsin.
go run ve go build
go run merhaba.go kaynak dosyanızı arka planda derler ve hemen çalıştırır; geçici bir binary üretir. Hızlı deneme için idealdir.
go build ise kalıcı bir binary üretir. Üretilen dosyayı ./merhaba ile doğrudan çalıştırabilirsin; Go kurulu olmayan bir makineye kopyalayıp koşabilirsin.
İki komut da derleme yapar; fark çıktıda. run hızlı, build dağıtılabilir üretir.
go run vs go build
İki komut arasındaki farkı bilmek verimli çalışmanızı sağlar:
- go run: hızlı geliştirme döngüsü, dosya bırakmaz
- go build: dağıtılabilir binary üretir, üretim için kullanılır
- go install: binary'yi
GOBINaltına kurar
Üretimde her zaman go build (ya da CI aracı) ile elde edilmiş binary kullanılır.
Uygulama Derleme bilgisi
go build ile üretilen ikili, derlendiği hedefi bilir. runtime.GOOS ve runtime.GOARCH değerlerinin boş olmadığını fmt.Println(runtime.GOOS != "", runtime.GOARCH != "") ile yazdır.
Başlangıç kodu
package main
import (
"fmt"
"runtime"
)
func main() {
// buraya yaz
}Örnek çözüm
package main
import (
"fmt"
"runtime"
)
func main() {
fmt.Println(runtime.GOOS != "", runtime.GOARCH != "")
}Beklenen çıktı
true true
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 go build ne üretir?
- Bir Docker imajı
- Çalıştırılabilir bir binary Doğru cevap
- Bir ZIP dosyası
- Bir web sunucusu
Açıklama: go build çalıştırılabilir bir binary üretir.
2 go run komutu
merhaba.go dosyasını derleyip çalıştırmak için ____ merhaba.go yazarız.
merhaba.go dosyasını derleyip çalıştırmak için go run merhaba.go yazarız.
Açıklama: go run kaynak dosyayı derleyip çalıştırır.
3 Komutları eşleştir
| Kavram | Anlamı |
|---|---|
go run |
Derleyip çalıştırır |
go build |
Binary üretir |
go install |
GOBIN'e kurar |
go test |
Testleri koşar |