Error Message Style
Xato xabarlari uslubi
Go xato xabarlari uchun aniq uslub qoidasiga amal qiladi: kichik harf bilan boshlanadi va oxirida tinish belgisi bo'lmaydi. Bu — boshqa tillardan farqli, lekin sababi bor.
package main
import (
"errors"
"fmt"
)
// Yomon uslub: katta harf bilan boshlangan, nuqta bilan tugagan
var errBad = errors.New("Fayl topilmadi.")
// Yaxshi uslub: kichik harf, tinish belgisisiz
var errGood = errors.New("fayl topilmadi")
func main() {
// Xatolar ko'pincha boshqa xato ichiga o'raladi:
wrapped := fmt.Errorf("konfiguratsiyani o'qishda: %w", errGood)
fmt.Println(wrapped)
// Natija: "konfiguratsiyani o'qishda: fayl topilmadi" — o'qilishi tabiiy!
// Agar errBad ishlatilganda edi:
// "konfiguratsiyani o'qishda: Fayl topilmadi." — o'rtada katta harf, oxirida ortiqcha nuqta — g'alati ko'rinardi
}Sabab aynan shu: xatolar ko'pincha boshqa xatolar ichiga o'raladi (%w bilan), va bir nechta xato birlashtirilganda gap bitta uzun jumlaga aylanadi. Agar har bir bo'lak katta harf bilan boshlansa yoki nuqta bilan tugasa, natija — "Xato: Fayl. topilmadi.: Ulanish. uzildi." kabi g'alati matn bo'lib chiqadi. Kichik harf + tinish belgisisiz qoida — istalgan combinatsiyada tabiiy o'qiladigan xabar hosil qiladi.
>_ Exercise
Xato xabarlarini Go uslubiga moslashtiring.
- •"Ulanish vaqti tugadi." o'rniga to'g'ri uslubda ("ulanish vaqti tugadi") xato yarating
- •uni "so'rovni bajarishda: %w" bilan o'rab chop eting
Stuck? Reveal a hint to help you.
Key Takeaway
Key Takeaway:
Go xato xabarlari kichik harf bilan boshlanadi va tinish belgisisiz tugaydi — bu ularni boshqa xatolar ichiga o'ralganda ham tabiiy o'qiladigan qiladi.
NEXT UP
Errors Capstone
$ go run main.go
Kodingizni ishga tushiring