|
Cześć Adam!
Większość projektów Spring Boot ma jedną wspólną cechę: wszystko jest publiczne. Klasy DTO, Entity, Service i Repository mają modyfikator public.
Problem: Niekontrolowane wycieki Jeśli klasa jest publiczna, można ją wstrzyknąć wszędzie. Programista z modułu powiadomień wstrzykuje ProductRepository, bo potrzebował jednej ceny. Po roku masz pajęczynę zależności między modułami, której nie da się rozplątać.
Encapsulation by Package W Vertical Slice Architecture pakiet to Twoja granica modułu. Wykorzystujemy modyfikator package-private, czyli brak słowa kluczowego przy definicji klasy.
Jak to wygląda w
kodzie?
|