* 마틴 파울러의 "리팩토링" 책을 공부한 후 정리한 포스팅 * 비중이 적은 내용은 생략하였음. 2.1 리팩터링 정의 리팩터링 : 겉보기 동작은 그대로 유지한 채, 여러 가지 리팩토링 기법을 적용해서 소프트웨어를 재구성. + 특정한 방식에 따라 코드를 정리 작은 단계들을 거쳐 코드 수정하여 순차적으로 큰 변화를 만들어냄. ( 겉보기동작 : 코드의 동작은 전과 후가 완전히 같아야 함. 내부 동작은 달라져 성능은 변할 수 있음. ) 성능 최적화와 비슷. 코드의 목적을 이해하고 수정하기 쉽게 만듬. 오로지 성능이 목표가 아니다. 2.2 두 개의 모자 소프트웨어 개발시 ‘기능 추가’ 혹은 ‘리팩터링’ 목표를 구분해 작업함. 2.3 리팩터링하는 이유 설계가 좋아짐 내부 설계가 유지되기 위함. 지속적인 리팩토링이 ..