조건문 분해하기(Decompose Conditional) 여러 조건에 따라 달라지는 코드를 작성하다보면 종종 긴 함수가 만들어지는 것을 목격할 수 있다. “조건” 과 “액션” 모두 “의도”를 표현해야한다 기술적으로는 “함수 추출하기”와 동일한 리팩토링이지만 의도만 다를 뿐이다. 리팩토링 (전) private Participant findParticipant(String username, List participants) { Participant participant = null; if (participants.stream().noneMatch(p -> p.username().equals(uesrname))) { participant = new Participant(uesrname); participant..