Menu
CoddyTech

Formatlanmış Hatalar Oluşturma

Coddy'nin GO Journey'sinin Temeller bölümünün bir parçası. Ders 107 / 109.

Biçimlendirilmiş Hatalar Oluşturma... hata mesajlarına dinamik değerler eklemenizi sağlar.

fmt.Errorf() işlevi, fmt.Printf() işlevine benzer şekilde biçimlendirilmiş dizelerle hatalar oluşturur:

import (
    "fmt"
)

func divide(a, b int) (int, error) {
    if b == 0 {
        return 0, fmt.Errorf("cannot divide %d by zero", a)
    }
    return a / b, nil
}

func main() {
    result, err := divide(10, 0)
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println("Result:", result)
    }
}

Çıktı şöyle olacaktır:

Error: cannot divide 10 by zero
challenge icon

Görev

Başlangıç

Bu görevde, fmt.Errorf işlevini kullanarak biçimlendirilmiş hata mesajları oluşturma pratiği yapacaksın. Bir kullanıcı adını doğrulayan bir programın var ve kullanıcı adı geçersiz olduğunda uygun bir hata mesajı oluşturman gerekiyor.

Programda, çok kısa (5 karakterden az) önceden tanımlanmış bir kullanıcı adı bulunuyor. Görevin, geçersiz kullanıcı adını ve gereken minimum uzunluğu içeren biçimlendirilmiş bir hata mesajı oluşturmak.

Kendin dene

package main

import (
	"fmt"
)

func main() {
	// Çok kısa olan önceden tanımlanmış username
	username := "bob"
	// Gerekli minimum uzunluk
	minLength := 5
	
	// username değerinin geçerli olup olmadığını kontrol et
	if len(username) < minLength {
		// TODO: fmt.Errorf kullanarak şunları içeren biçimlendirilmiş bir hata oluştur:
		// 1. Geçersiz username
		// 2. Gerekli minimum uzunluk
		// Örnek biçim: "invalid username: [username] is too short, minimum length is [minLength]"
		err := // Kodun buraya
		
		// Hatayı yazdır
		fmt.Println(err)
	} else {
		fmt.Println("Username is valid!")
	}
}
quiz iconKendini test et

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

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Online Go derleyicisi