İçeriğe geç

Dışa Açık Değiştirilebilir Alan (ARCH5186)

Anahtar go.quality.exported-mutable-field · Önem info · Kategori quality

Doğrudan dışa açık değiştirilebilir alanlar değişmezleri zorlamayı imkansız kılar ve iç durumu sızdırır. Alanı kapatıp erişimci sağlayın.

type Account struct {
Balance int // herkes serbestçe yazabilir
}
type Account struct {
balance int
}
func (a *Account) Balance() int { return a.balance }
func (a *Account) Deposit(n int) error {
if n <= 0 {
return errInvalidAmount
}
a.balance += n
return nil
}

Alanı dışa kapalı (unexported) yapın ve değişmezleri zorlayan erişimci metotlar ekleyin.