CodeBlanks Logo Icon CodeBlanks

go mod init

Yeni bir Go modülü başlatmayı ve go.mod dosyasını öğrenirsin.

go mod init

go mod init komutu yeni bir Go modülü başlatır. Modül, ilgili Go paketlerinin bir koleksiyonudur ve go.mod dosyasıyla yönetilir.

Bir modül başlatmak için proje dizininde go mod init ornegim/selam yazarsın. Bu komut go.mod adında bir dosya oluşturur ve içine modül yolunu yazar.

Modül yolu genelde bir URL gibidir: github.com/kullanici/proje. Bu yol hem benzersizlik sağlar hem de go get ile bağımlılık indirirken kullanılır.

go.mod içeriği

go.mod dosyası oldukça sadedir. İlk satır module anahtar kelimesiyle modül yolunu içerir. İkinci satır go anahtar kelimesiyle kullanılan Go sürümünü belirtir.

Bağımlılık ekledikçe require blokları oluşur; her bağımlılık bir satırda yol ve sürüm olarak yazılır. go.sum dosyası ise her bağımlılığın hash değerini tutar.

Bu dosyayı elle düzenlemek gerekmez; go get, go mod tidy gibi komutlar dosyayı otomatik günceller.

Uygulama Modül yolu

go mod init example.com/merhaba komutu module example.com/merhaba satırını üretir. Bu satırı strings.CutPrefix ile ayrıştırıp modül yolunu yazdır: yol, ok := strings.CutPrefix("module example.com/merhaba", "module ").

Başlangıç kodu

main.go
package main

import (
    "fmt"
    "strings"
)

func main() {
    // buraya yaz
}

Örnek çözüm

main.go
package main

import (
    "fmt"
    "strings"
)

func main() {
    yol, ok := strings.CutPrefix("module example.com/merhaba", "module ")
    fmt.Println(yol, ok)
}

Beklenen çıktı

example.com/merhaba true

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 go mod init ne üretir?

  • binary dosya
  • main.go dosyası
  • README.md dosyası
  • go.mod dosyası Doğru cevap

Açıklama: go mod init, go.mod dosyasını oluşturur.

2 Modül bildirimi

Soru
go.mod dosyasının ilk satırı:
____ ornegim/selam
Cevap
go.mod dosyasının ilk satırı:
module ornegim/selam

Açıklama: module anahtar kelimesi modül yolunu başlatır.

3 Modül parçalarını eşleştir

Kavram Anlamı
module Modül yolu
go Go sürümü
require Bağımlılık
go.sum Hash deposu

Başlangıç bölümündeki tüm dersler