-
주니어 개발자가 읽은 '리팩토링' 후기 - 마틴 파울러IT, 기술 도서 2019. 3. 31. 19:42
회사 아침 일찍 와서 틈틈이 읽던 '리팩토링' 을 다 읽었다.
리팩토링 이란 외부동작을 바꾸지 않으면서 내부 구조를 개선하는 방법으로, 소프트웨어를 보다 쉽게 이해하고, 수정하기 쉽도록 만드는 것, 겉으로 보이는 소프트웨어의 기능을 변경하지 않는 것 을 일컫는다.
읽으면서 실무 코드에 적용해보기 위해 이래저래 시도하면서 유용한 것도 많았고 실질적으로 코드를 깔끔하게 만들었을 때 뿌듯하기도 했다.
유용하게 사용했던 부분은 조건문 간결화 파트 부분이었다. 조건문이 길어지면 메서드로 빼거나, 충분히 줄일 수 있는 늘어진 if,else 문을 줄이는 리팩토링법 등이 좋았다.파트별로 나누어볼 수 있어서 사무실 책상 위에 올려두고 까먹을 때마다 꺼내서 적용할 수 있다.
거대한 하나의 클래스를 조각조각 클래스로 나누거나 메서드 이동, 인스턴스를 생성할 때 단순 생성자보다 팩토리메서드를 사용하라, null객체를 만드는 방법 등 모르거나 생각지 못한 리팩토링 방법도 많았다.
개발자에게 필독서라고 했는데 왜 필독서인지 알겠는 기분이다. 우리 회사는 리팩토링에 대해 큰 목적의식이나 강요하지 않는 조직이다보니 코드들이 이해하지 못하게 길게 늘어져 있거나 하나의 메서드, 하나의 클래스 책임이 엄청나게 큰 부분이 꽤 있다. 그렇게 되는 것도 개발자만 탓할게 아니라 급한 일정압박, 과중업무 때문일거라고 생각한다.
리팩토링이라는 책이 꼭 주니어만이 아니라 개발자라면 모두에게 해당하는 문제를 다루고 있기 때문에 누구든 읽으면 도움이 됐으면 됐지 안되진 않아보인다.
틈날 때마다 깃허브에 리팩토링 내용을 정리해두려한다.
'IT, 기술 도서' 카테고리의 다른 글
스프링 부트 입문자 도서 ! - '처음 배우는 스프링부트2'를 읽고 (0) 2019.07.21 이해하기 쉽고 재밌게 읽었던 '객체지향의 사실과 오해' - 조영호 (0) 2019.03.31 내 마음 속 자부심을 키워주는 '소프트웨어 장인'을 읽고 (0) 2018.09.01 개발 첫 입문책 '클린 코드'를 읽고 (0) 2018.07.04 TDD의 바이블 '테스트 주도 개발'을 읽고 (0) 2018.06.17