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 bildirimi ile başlar. import anahtar kelimesi, Go'nun standart kütüphanesinden paketleri dahil eder, böylece onların fonksiyonlarını kullanabilirsiniz.

Tek bir paketi 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 fonksiyonları paket adı önekiyle 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"     // Formatlı G/Ç (Print, Scan, Sprintf)
"strings" // Dize işleme (ToUpper, Contains, Replace)
"math"    // Matematik fonksiyonları (Sqrt, Pow, Pi)
"strconv" // Dize dönüşümleri (Itoa, Atoi)

Bir paketteki fonksiyonlara packagename.FunctionName kullanarak erişirsiniz. Go, yalnızca gerçekten kullandığınız paketleri içe aktarmanıza izin verir — kullanılmayan içe aktarmalar bir derleme hatasına neden olur.

challenge icon

Görev

Orta

Fonksiyonların doğru çalışması için utils.go dosyasındaki import ifadesini düzeltin. strings ve math paketlerini içe aktarmanız gerekiyor:

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

Kopya kağıdı

Her Go dosyası bir package bildirimi ile başlar. Go'nun standart kütüphanesinden paketleri dahil etmek için import anahtar kelimesini kullanın.

Tek bir paketi içe aktarın:

import "fmt"

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

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

İçe aktarılan paketlerdeki fonksiyonlara packagename.FunctionName kullanarak erişin:

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 işleme (ToUpper, Contains, Replace)
"math"    // Matematik fonksiyonları (Sqrt, Pow, Pi)
"strconv" // Dize dönüştürmeleri (Itoa, Atoi)

Not: Go yalnızca gerçekten kullandığınız paketleri içe aktarmanıza izin verir — kullanılmayan içe aktarmalar derleme hatasına neden olur.

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