Menu
Coddy logo textTech

`error` Arayüzü

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

Go'da, error arabirimi hata durumlarını temsil eden yerleşik bir türdür. Error() yöntemini uygulayan herhangi bir tür bu arabirimi karşılar.

İşte error interface tanımı:

type error interface {
    Error() string
}

Özel bir hata türü oluşturun:

type MyError struct {
    Message string
}

func (e MyError) Error() string {
    return e.Message
}

func main() {
    err := MyError{Message: "something went wrong"}
    fmt.Println(err)
}

Çıktı şu şekilde olacaktır:

something went wrong
challenge icon

Görev

Kolay

Bu görevde Go'nun error arabirimi ile çalışacaksınız. errors.New() fonksiyonunu kullanarak özel bir hata oluşturmanız ve ardından bir hatanın var olup olmadığını kontrol etmeniz gerekiyor.

Kodda zaten bir hata döndüren bir fonksiyon bulunmaktadır. Göreviniz, hatanın nil olmadığını kontrol etmek ve uygun bir mesaj yazdırmaktır.

Kendin dene

package main

import (
	"errors"
	"fmt"
)

func main() {
	// Bu fonksiyon bir hata döndürür
	err := generateError()
	
	// TODO: err'in nil olmadığını kontrol et
	// Eğer err nil değilse, yazdır: "Error occurred: " ardından hata mesajı
	// HINT: err != nil olup olmadığını kontrol etmek için bir if ifadesi kullan
	
	
	// Bu satır bir hata oluşup oluşmadığına bakılmaksızın çalışır
	fmt.Println("Program completed successfully")
}

// Bu fonksiyon bir hata oluşturur
func generateError() error {
	return errors.New("something went wrong")
}
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