OOP와 FP는 문제의 변화 축으로 선택한다

상태의 소유권과 계산의 조합성이라는 두 기준으로 적용 영역을 나눈다.

정체성

OOP 적합

시간이 지나도 같은 대상이며 내부 불변식을 지켜야 함

협력

OOP 주의

상속보다 작은 객체의 위임으로 결합도를 낮춤

변환

FP 적합

입력에서 출력으로 이어지는 계산 단계가 중심

효과

FP 주의

I/O와 시간 의존은 순수 계산 바깥 경계로 분리

핵심상태를 숨겨야 하는가, 변환을 조합해야 하는가를 먼저 묻고 스타일을 정한다.