Co to jest hermetyzacja?
Hermetyzacja to jedna z podstawowych zasad programowania obiektowego. Polega na ukrywaniu wewnętrznych szczegółów działania klasy i udostępnianiu na zewnątrz tylko tych elementów, które są potrzebne do korzystania z obiektu.
W praktyce oznacza to, że pola i metody używane wyłącznie wewnątrz klasy powinny mieć ograniczony dostęp, najczęściej za pomocą modyfikatorów private lub protected.
Po co stosuje się hermetyzację?
Hermetyzacja pomaga:
- chronić dane obiektu przed przypadkową lub błędną zmianą,
- kontrolować sposób modyfikowania pól,
- ukryć szczegóły implementacji,
- ułatwić późniejszą zmianę kodu bez wpływu na resztę programu.
Przykład w PHP
class Uzytkownik {
private string $haslo;
public function ustawHaslo(string $noweHaslo): void {
if (strlen($noweHaslo) >= 8) {
$this->haslo = $noweHaslo;
}
}
}
Pole $haslo jest prywatne, więc nie można go zmienić bezpośrednio spoza klasy. Zmiana odbywa się przez metodę ustawHaslo(), która może sprawdzić poprawność danych.
Najważniejsze do egzaminu
Hermetyzacja oznacza ograniczanie dostępu do pól i metod klasy, szczególnie tych, które nie powinny być używane poza klasą. W pytaniach egzaminacyjnych często łączy się ją z modyfikatorami dostępu: private, protected i public.