본문 바로가기

잡학다식/서평

Refactoring 2 책을 읽고!

728x90
반응형

개발자라면 단연 "리팩터링"이라는 단어를 처음 접하는 사람은 없을 것이다.
어마 어마한 천재이거나, 신이 아니라면 대부분의 개발자는 자신이 만든 코드를 다시 돌이켜 보며 리팩터링이라는 작업을 하게 된다.

리팩터링은 자신이 만들어 놓은 코드를 다시 한번 재정비하고 수정하여 더욱 좋은 코드로 발전시키는 작업이다.
리팩터링을 할 수 있다는 것은 SW에겐 축복이고 IT 세상에 무한한 발전을 가능하게 해 준 원동력 중 하나라고 생각한다. 외부에 변화를 최소화하며 내부에 변화를 지속적으로 해나가는 것이 리팩터링이기 때문에 리팩터링을 하는 애플리케이션은 계속 진화하고 있다고 볼 수 있다.
많은 사람들이 리팩터링을 거친 시스템은 과거보다 더 생산적이고 효율적이며 안전하게 될 것을 기대할 것이다. 하지만 리팩터링을 하는 행위만으로 항상 좋은 방향으로 시스템이 진화한다고 이야기 하기는 어렵다. 잘못된 리팩터링은 시스템이 더욱 좋지 않은 방향으로 충분히 진화시킬 수 있다.
훌륭한 프로그램 결과물은 훌륭한 개발자에게서 나올 수 있다. 좋은 리팩터링 문화와 방법이 더 좋은 프로그램을 만들 수는 있지만 리팩터링을 하는 사람에 따라 그 방향성은 충분히 변할 수 있는 것이다.
그렇다면 더 나은 개발자가 되기 위해서는 어떻게 해야 할까? 더 좋은 리팩터링을 할 수 있는 방법은 어떻게 알 수 있을까?

더 세부적인 질문으로는 내가 이렇게 리팩터링 하는 것이 과연 올바른 판단인가? 언제 리팩터링 하는 것이 이 프로젝트에 도움이 되는 것일까? 와 같은 다양한 질문에 답변을 해줄 수 있는 책이 이 책이다.

"Refactoring 2"



이 책은 리팩터링의 간단한 원칙에서부터 세부적인 코드의 사례들과 그것을 개선하는 방법까지 상세하게 알려준다.


리팩터링을 하는 이유와 언제 리팩터링을 해야 하는지에 대한 내용을 2장에서 다룬다.
이것을 하고 나면 리팩터링에 대해 보다 더 깊이 있게 이해할 수 있으며 나만의 리팩터링 철학이 정립될 수 있다.



3장에서는 무엇이 잘못된 코드인지에 대해 알려준다.
당연하게 사용했던 많은 나의 잘못된 습관들을 알려주는 시간이다.


이후 상속 / 캡슐화와 같은 객체 기반의 리팩터링 기법들과 테스트와 같은 영역까지 다룬다. 개발 전반적인 영역을 다룬다고 보면 된다.

본 책에는 간단한 예제 코드와 함께 개선해야 하는 방향성에 대해서도 코드 레벨로 가이드해준다.

개인적으로 이 책을 읽으며 나의 부족한 코드들이 많이 떠올라 스스로를 부끄럽게 만들었던 시간이었던 거 같다. 하지만 부끄러움을 느낀 만큼 더 성장했다고 생각한다.

보다 나은 개발자가 되고 싶다면 이 책을 읽는 것을 추천한다.
요즘 개발자들 정말 공부할 것이 많고 시간이 없는 것은 잘 알고 있다.
자고 일어나면 새로운 것이 나와있는 요즘 세상이다.
그래서인지 한편으로 기본에 충실하지 못하고 새로운 것만 추구하는 개발자들도 많아진 것 같다.
리팩터링은 개발자에게는 기본 소양과 같은 분야이다.
이것을 알아야 그다음도 있을 수 있는 법이다.
많은 개발자들이 더 좋은 실력과 대우를 받기를 바라며 이 책을 추천한다.

 

   "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

728x90
반응형

'잡학다식 > 서평' 카테고리의 다른 글

[글 공유] 쿼커스 쿡북  (0) 2021.05.23
Cybersecurity Ops with bash 읽고  (0) 2021.04.17
초보자를 위한 유니티 입문  (0) 2019.04.18
실전 스프링 부트 워크북  (0) 2017.06.25
신경망, 첫걸음을 읽고  (0) 2017.05.21