Zalety i wady łączenia metod oraz możliwość zastąpienia wszystkich parametrów powrotu pustych przez sam obiekt
Interesuje mnie głównie Java, ale myślę, że to pytanie ogólne. Ostatnio pracuję z frameworkiem Arquillian (ShrinkWrap
), który wykorzystuje wiele łańcuchów metod. Innym przykładem łączenia metod są metodyStringBuilder
, StringBuffer
. Istnieją oczywiste korzyści z zastosowania tego podejścia: jednym z nich jest zmniejszona gadatliwość.
Zastanawiałem się, dlaczego nie wszystkie metody mająvoid
parametr powrotu zaimplementowany jako łańcuchowy? W łańcuchach musi istnieć oczywista i obiektywna wada. Ponieważ jeśli wszystkie metody są łańcuchowe, mogę nadal nie używać.
Nie pytam o zmianę istniejącego kodu w Javie, który mógłby gdzieś coś złamać, ale wyjaśnienie, dlaczego go nie użyto, byłoby również miłe. Pytam bardziej z perspektywy przyszłej struktury (napisanej w Javie).
Znalazłem podobne pytanie, ale oryginalny pytający rzeczywiście zastanawia się, dlaczego uważany jest za dobrą praktykę:Łańcuch metod - dlaczego jest to dobra praktyka?
Chociaż dostępnych jest kilka odpowiedzi, nadal nie jestem pewien, jakie są wszystkie zalety i wady łańcuchów i czy można by uznać za przydatne posiadanie wszystkich metod pustych.