State
객체 지향은 데이터와 관련 동작을 객체 단위로 묶는 데 강합니다.
JavaScript는 객체 지향과 함수형 스타일을 모두 사용할 수 있어 상태와 동작을 어떻게 나눌지 선택하는 감각이 중요합니다.
객체 지향은 데이터와 관련 동작을 객체 단위로 묶는 데 강합니다.
메서드와 캡슐화로 내부 상태 변경 책임을 객체에 둡니다.
함수형 스타일은 입력을 받아 새 값을 만드는 변환 흐름을 선호합니다.
작은 순수 함수를 조합해 예측 가능한 데이터 처리를 만듭니다.
상태 변경 규칙을 객체 안에 모아 사용자가 내부 구조를 몰라도 쓰게 합니다.
공통 동작 재사용은 상속뿐 아니라 객체 조합으로도 해결할 수 있습니다.
원본을 직접 바꾸기보다 새 값을 만들면 변화 추적이 쉬워집니다.
map, filter, reduce처럼 함수를 값으로 다뤄 목록 처리를 표현합니다.
상태를 가진 개체 모델이 중요한지, 데이터 변환 파이프라인이 중요한지 봅니다.
한 파일 안에서 패러다임을 무작정 섞기보다 책임 기준을 분명히 둡니다.
같은 목록 처리 문제를 객체 메서드 방식과 순수 함수 방식으로 비교합니다.