중간 연산 순서는 선택도·비용·의미 보존으로 정한다

비싼 map 뒤 filter를 두면 버릴 원소까지 변환하고, 순서를 바꾸면 결과가 달라지는 연산도 있습니다.

연산 재배치두 연산을 바꿔도 의미가 같은가

같고 filter 선택도 높음

filter를 앞에

map이 filter 기준 생성

map 먼저 유지

sorted·distinct

stateful 비용 고려

side effect 관찰

재배치 금지·효과 제거

핵심: 교환 가능한 연산인지 확인한 뒤 값싼 고선택도 filter를 앞에 둡니다.