11장

    [리펙터링 2판] 11장 - API 리팩터링

    모듈과 함수는 소프트웨어를 구성하는 빌등 블록, API는 이 블록들을 끼워 맞추는 연결부이다. 좋은 API 데이터를 갱신하는 함수와 그저 조회만 하는 함수를 명확히 구분해야 한다. 11. 1 질의 함수와 변경 함수 분리하기 내용 외부에서 관찰할 수 있는 겉보기 부수효과가 전혀 없이 값을 반환해주는 함수를 추구해야한다. 겉보기 부수효과는 입출력 변경이나, 데이터 값이 변형되는 경우 적용 데이터 갱신과 조회 기능이 있다면 명확히 구분해야 한다. 질의 함수(읽기 함수 : 값을 계산하여 리턴시키는 함수)는 부수효과가 포함된 경우에 제거한다. (명령-질의 분리) 결과 부수 효과를 신경쓸 필요가 없어 사용하기 편하고 테스트하기 쉽다. 예시 Before function getTotalOutstandingAndSend..