Wpis z mikrobloga

@kapelusz: może pisanie staroświeckiej pętli w przypadku pracy ze strumieniami nie ma sensu... Szczególnie, że pętla będzie zdecydowanie cięższa w przetestowaniu.

@sambarumba: można wpiąć za pomocą AspectJ w Stream i wtedy masz:

collection.stream().takeWhile(predykat).RESZTA
@kapelusz: ponieważ musisz w takim teście uwzględnić kilka elementów zarówno związanych z iteracją jak i z warunkami. W tym kodzie raz testujesz "pętlę", a w kodzie biznesowym już oddzielnie same predykaty. Jeżeli dodatkowo wydzielisz takeWhile do osobnego modułu to korzystasz z niego i nie zastanawiasz się jak działa pod spodem. Wstawiasz swój predykat, który jest banalny w testowaniu i jazda.

Zaletą strumieni w Javie jest możliwość separacji tego co robisz i