Menu
Coddy logo textTech

Paketler ve İçe Aktarmalar

Coddy'nin GO Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 3 / 107.

Her Go dosyası bir package bildirimiyle başlar. import anahtar sözcüğü, işlevlerini kullanabilmeniz için Go'nun standart kitaplığındaki paketleri içeri aktarır.

Tek bir paket içe aktarın

import "fmt"

Bir import bloğu kullanarak birden fazla paketi içe aktarın

import (
    "fmt"
    "math"
    "strings"
)

İçe aktarılan paketlerdeki işlevleri paket adını önek olarak kullanarak kullanın

package main

import (
    "fmt"
    "strings"
    "math"
)

func main() {
    upper := strings.ToUpper("hello")
    fmt.Println(upper) // Çıktı: HELLO

    root := math.Sqrt(16)
    fmt.Println(root) // Çıktı: 4
}

Yaygın standart kütüphane paketleri

"fmt"     // Biçimlendirilmiş G/Ç (Print, Scan, Sprintf)
"strings" // Dize manipülasyonu (ToUpper, Contains, Replace)
"math"    // Matematik fonksiyonları (Sqrt, Pow, Pi)
"strconv" // Dize dönüşümleri (Itoa, Atoi)

Bir paketteki işlevlere packagename.FunctionName kullanarak erişirsin. Go yalnızca gerçekten kullandığın paketleri içe aktarmana izin verir: kullanılmayan içe aktarmalar derleme hatasına neden olur.

challenge icon

Görev

Orta

İşlevlerin doğru çalışması için utils.go içindeki içe aktarma ifadesini düzelt. strings ve math paketlerini içe aktarman gerekiyor:

  • FormatText, strings.ToUpper kullanır
  • ContainsWord, strings.Contains kullanır
  • SquareRoot, math.Sqrt kullanır

Kendin dene

package main

import (
    "bufio"
    "fmt"
    "os"
    "strconv"
    "strings"
)

func main() {
    scanner := bufio.NewScanner(os.Stdin)
    scanner.Scan()
    line := scanner.Text()

    parts := strings.Fields(line)
    numStr := parts[len(parts)-1]
    text := strings.Join(parts[:len(parts)-1], " ")
    num, _ := strconv.ParseFloat(numStr, 64)

    fmt.Printf("Upper: %s\n", FormatText(text))
    fmt.Printf("Contains 'world': %t\n", ContainsWord(text, "world"))
    fmt.Printf("Sqrt: %.2f\n", SquareRoot(num))
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online Go derleyicisi