Junior — Middle
Kapsüllash prinsipi va uni ob'ektga yo'naltirilgan dasturlashda qanday amalga oshirilishini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Kapsülasyon, nesne yönelimli proqramlamanın bir prinsipidir və bir obyektin daxili tətbiqini gizlətməyi və verilərə və metodlara yalnız müəyyən bir interfeys vasitəsilə giriş imkanı verməyi nəzərdə tutur.
Bu, aşağıdakıları təmin edir:
- Məlumatların düzgün olmayan istifadədən qorunması
- Tətbiqin mürəkkəbliyinin gizlənməsi
- Obyektin vəziyyətində dəyişikliklər üzərində nəzarətin təmin olunması
OOP dillərində, kapsülasyon giriş modifikatorları (məsələn, private, protected, public) vasitəsilə həyata keçirilir və hansı sahələrin və metodların xaricdən əlçatan olduğunu müəyyən edir.
Go dilində nümunə (kapsülasyon, ixrac olunan və ixrac olunmayan identifikatorlar vasitəsilə əldə edilir):
type User struct {
name string // ixrac olunmayan sahə, yalnız paket daxilində əlçatandır
}
func (u *User) GetName() string {
return u.name // ümumi metod adə görə giriş üçün
}
func (u *User) SetName(newName string) {
if newName != "" {
u.name = newName
}
}
Burada, name sahəsi xarici girişdən gizlidir və onunla qarşılıqlı əlaqə GetName və SetName metodları vasitəsilə həyata keçirilir.