Junior — Middle
Obyekt yönümlü proqramlaşdırmada məlumatların qapanması konseptini izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
İnkapsulasiya obyekt yönümlü proqramlaşdırmanın prinsiplərindən biridir və obyektin daxili vəziyyətinin gizlədilməsini və ona yalnız metodlar (interfeys) vasitəsilə girişin təmin olunmasını nəzərdə tutur.
Go dilində, inkapsulasiya identifikatorların görünürlüğü vasitəsilə həyata keçirilir:
- Böyük hərflə başlayan adlar ixrac olunur və digər paketlərdən əldə edilə bilər (ictimai).
- Kiçik hərflə başlayan adlar yalnız paket daxilində əldə edilə bilər (özəl).
Beləliklə, məlumatları inkapsulyasiya etmək üçün, struktur sahələrini kiçik hərflə elan etmək və bu sahələrə giriş və dəyişiklik üçün metodlar təmin etmək lazımdır.
Nümunə:
package user
type User struct {
name string // özəl sahə
}
func NewUser(name string) *User {
return &User{name: name}
}
func (u *User) GetName() string {
return u.name
}
func (u *User) SetName(name string) {
u.name = name
}
Bu yanaşma məlumatlara girişin idarə olunmasına, onların bütövlüyünün təmin olunmasına və daxili tətbiqin dəyişdirilməsinə imkan verir, xarici kodu təsir etmədən.