도서 & 강의

[개발 서적] 리팩터링 2판 후기

주인장 꼬비 2023. 5. 6. 18:50

 

교보문고인가 알라딘에서 온라인으로 구매하였고, 분철 서비스(+2000원) 도 받았다.

 

강의 정리 github : https://github.com/kkeolmusae/refactoring-2nd-edition

 

GitHub - kkeolmusae/refactoring-2nd-edition

Contribute to kkeolmusae/refactoring-2nd-edition development by creating an account on GitHub.

github.com

 

내용 요약

"리팩터링 2판"은 소프트웨어 개발에서 중요한 개념인 리팩터링에 대한 실전적인 가이드를 제공하는 책이다. 이 책은 마틴 파울러(Martin Fowler)와 그의 동료들이 쓴 책으로, 소프트웨어 개발 과정에서 코드를 수정하고 개선하는 기술인 리팩터링에 대한 내용을 다룬다. 

 

"리팩터링 2판"은 총 12장으로 구성되어 있으며, 각 장은 특정한 리팩터링 기법을 다루고 있다. 또한, 각 장은 특정한 패턴을 따르며, 매우 구체적인 예제와 함께 설명되어 있다. 리팩터링에 대한 실전적인 가이드를 제공하는 것으로 더불어, 매우 구체적인 예제를 제공하여 이해를 돕는다. 이 예제는 실제 소프트웨어 개발에서 발생할 수 있는 문제점과 그에 대한 해결책을 보여주며, 이를 통해 리팩터링의 이점과 효과를 명확하게 이해할 수 있다.

 

 

후기

평소에 개발서적을 사면 완독을 잘 못했다. 완독을 못하는 이유는 다음과 같았다.

 

1. 재미가 없다.

2. 잘 안읽혀진다.

3. 두껍다. 

 

이 책은 재미가 있고, 잘 읽혀지고, 비교적 얇고 업무에 바로 활용이 가능하다. 

 

 

회사에서 일할때 매번 리팩토링을 해야한다는 생각만 있고 생각을 실천으로 옮기는게 쉽지않았다. 입사 초에 구현했거나 급하게 구현하느라 유지보수하기 힘든 코드들을 볼 때마다 회피하는게 일상이었다. 어떻게 리팩토링 하는 것이 좋을지도 몰랐고 리팩토링할 시간도 잘 나지 않았기 때문이다. 하지만 이 책을 읽고 나서는 자신감을 얻어 리팩토링을 실천에 옮길 수 있게 되었다.

 

느낀점 

코드 변경을 한꺼번에 하면 버그를 놓치기 쉽고 원래 코드로 돌아가기 어렵다. 작은 단계로 체계적으로하는게 쉽지 않지만 노력해보자.

 

테스트 코드를 작성하자..... 테스트코드의 필요성을 이번에 또한번 느꼈다..

 

어떤 부분이 도움이 되었는지

우선 신규로 개발한 기능들은 악취(책에서 리팩토링이 필요한 곳을 악취라고 정의했다)를 최소화하면서 개발하였다. 아직 책에 나온 리팩터링 기법을 모두 개발에 적용할 정도로 잘하진 못한다. 하지만 예전보다는 코드 퀄리티가 향상되었고 리팩토링하기 용이하게 구현해뒀다.

 

그리고 묵혀둔 악취중 일부를 어느정도 해소시켰다. 평소 업무시간에는 새 기능개발과 유지보수때문에 시간이 잘 나지 않는다. 그래서 주말에 시간을 할애하여 집에서 리팩토링을 진행했다. 리팩토링이 완전히 마무리 된 것은 아닌데 적어도 얼마전에 급하게 버그 대응을 한다고 땜빵해둔 코드를 제거하고 크게 지저분한 부분을 정리했다.