목록2024/11 (22)
구어체로 설명하는 다이어리

함수 추출하기 function printOwing(invoice) { printBanner(); let outstanding = calculateOutstanding(); // 세부사항 출력 console.log(`고객명: ${invoice.customer}`); console.log(`채무액: ${outstanding}`);} ▼ function printOwing(invoice) { printBanner(); let outstanding = calculateOutstanding(); printDetails(outstanding); function printDetails(outstanding) { console.log(`고객명: ${invoice.customer}`); ..

카탈로그의 첫머리는 가장 기본적이고 많이 사용해서 제일 먼저 배워야 하는 리팩터링들로 시작한다. 내가 가장 많이 사용하는 리팩터링은 함수 추출하기와 변수 추출하기다. 리팩터링은 본래 코드를 변경하는 작업인 만큼, 이 두 리팩터링을 반대로 진행하는 함수 인라인하기와 변수 인라인하기도 자주 사용한다. 추출은 결국 이름 짓기이며, 코드 이해도가 높아지다 보면 이름을 바꿔야 할 때가 많다. 함수 선언 바꾸기는 함수의 이름을 변경할 때 많이 쓰인다. 함수의 인수를 추가하거나 제거할 때도 이 리팩터링을 적용한다. 바꿀 대상이 변수라면 변수 이름 바꾸기를 사용하는데, 이는 변수 캡슐화하기와 관련이 깊다. 자주 함께 뭉쳐 다니는 인수들은 매개변수 객체 만들기를 적용해 객체 하나로 묶으면 편리할 때가 많다. 함수 구성과..