CHAPTER 01 리팩터링: 첫 번째 예시

CHAPTER 02 리팩터링 원칙

CHAPTER 03 코드에서 나는 악취

CHAPTER 04 테스트 구축하기

CHAPTER 05 리팩터링 카탈로그 보는 법

CHAPTER 06 기본적인 리팩터링

CHAPTER 07 캡슐화

CHAPTER 08 기능이동

CHAPTER 09 데이터 조직화

CHAPTER 10 조건부 로직 간소화

CHAPTER 11 API 리팩터링

CHAPTER 12 상속 다루기

<aside> 🗣 원래 코드 습관이 기능이 작동되는걸 우선시 하여 코드 자체에 대한 내용은 신경쓰지 않고 작성하다 보니 어느새 습관이 되어 있었었다. 리팩터링을 읽으면서 내가 작성한 코드들이 소위 책에서 말하는 악취가 엄청나게 풍기는 코드들이었다. 또한 책을 다 읽을 때까지 기억에 남는 “리팩터링하다가 코드가 깨져서 며칠이나 고생했다 라고 한다면, 십중팔구 리팩터링 한 것이 아니다.” 라는 말은 정말 인상 깊었다. 내가 항상 코드를 다 작성하고 리팩터링을 마음먹고 하다보면 여기저기 엉켜서 에러가나는 경우가 많았기 때문이다.

책에서 잘못된 사례들을 이야기하면서 이런 것들을 해결하기 위해 리팩터링을 해야한다!라고 하는데, 그 잘못된 사례들이 대부분 내가 다 하고 있는 것들이어서 반성하면서 읽게 됐던 것 같다. 생각해보면 우선 기능만 잘 되면 됐지!도 말이 안된다. 잘못된 코드는 결국엔 에러가 발생하게 되어 있기 때문이다.

알려주는 리팩터링 기법의 내용들이 결국엔 자바스크립트의 클래스를 사용해 해결하다보니 클래스에 대해 제대로 알지 못했던 것이 아쉽게 느껴졌다. 클래스를 알았더라면 조금 더 쉽게 이해해서 받아들였을텐데.. 클래스를 공부하고 다시 읽게 된다면 어떤 것들이 다시 새롭게 느껴질지 기대된다.

이 책은 옆에 두고 계속해서 읽어보아야 할 책인 것 같고, 리팩터링을 적용해보고자 할 때 다시 한 번 펼쳐서 읽어보며 적용해본다면 정말 좋을 것 같다.

</aside>