728x90

 

기억에 남는 내용

- 최초에 탄탄한 설계를 갖추어도 어차피 시간이 프르면 각종 요구사항의 증가와 변화로 프로그램에 기능을 추가하거나 수정하기 마련

- 리팩토링은 수년간의 경험을 통해 발견한 구체적인 소프트웨어 개선 방법들의 공통 해결책을 발견해 일반화한 추상 개념이다.

- 리팩토링은 기존의 소스코드를 가독성 readability, 재활용 reusability, 체계적 구조 well-structured 측면에서 개선하는 총괄 작업을 뜻한다.

 


 

후기

여기까지만 보더라도 리팩토링이 왜 해야하는 활동인지 어느정도 이해한것 같다.

옮긴이의 말을 보면서 한가지 걱정되는 부분이 생겼다.

내용은 어떨지 봐야 알겠지만, 이분의 문장 호흡이 긴 편이라고 느꼈다.

문장이 길면 한 문장을 온전히 이해하는데 아무래도 시간이 더 필요하다.

 

가볍게 읽히기를 바라는 것은 아니지만, 저자의 의도가 안전하게 전달될지 조금 걱정된다.

 

 

 

 

728x90

'생각을 적바림 > 리팩토링' 카테고리의 다른 글

001 리팩토링 '서문'  (1) 2024.01.18
728x90

 

기억에 남는 내용

- 팀장은 나중에 여유가 생기면 하겠다고 했다.
- 코드를 정리한들 새로운 기능이 생기는 것도 아니고 그저 코드가 더 깔끔해 보일 뿐이다.
- 긁어 부스럼 만들지 말라(돌아가기만 한다면 코드에 손대지 말라) 는 전톷적인 공학 격언이 맞는 말이라 생각하나?
- 켄트는 작업 방식을 여러모로 달리했지만 그 중에서도 가장 핵심은 리팩토링을 이용해 코드를 꾸준히 정리하게 했다는 점이다.

 

"리팩토링이란"

- 리팩토링은 겉으로 드러나는 코드의 기능은 바꾸지 않으면서 내부 구조를 개선하는 방식으로 소프트웨어 시스템을 수정하는 과정이다.
- 리팩토링한다는 것은 코드를 작성하고 난 뒤 설계를 향상시키는 일이다.
- 리팩토링의 각 단계는 간단하다 못해 지나칠 정도로 단순하다.
- 모든 설계를 미리 떠올리는 게 아니라 개발 도중에 꾸준히 떠올리게 되며 시스템 제작을 통해 설계 개선 방법을 배운다.

 

"다루는 내용"

- 이 책은 전문 프로그래머를 대상으로 쓴 리팩토링 지침서다.
- 부디 이 책의 카탈로그 부분을 자주 펼쳐보길 바란다.
- 13장 : 빌 옵다이크가 상용 개발에 리팩토링을 적용하면서 겪은 문제들을 설명
- 14장 : 돈 로버츠와 존 브랜트가 리책토링의 진정한 미래와 자동화 도구에 관해 설명
- 15장 : 리팩토링의 대가인 켄트 벡의 마무리 설명

 

"자바를 예제로 설명한 이유"

- 다만, 내가 다른 언어보다는 자바를 가장 잘 알기 때문에 자바 코드로 설명하는 것이 가장 좋을 것 같았다.
- 자바만의 좀 더 강력한 각종 기능은 가능한 사용하지 않았다.
- 이 책에서 다루는 리책토링 기법은 다중 프로그래밍이나 분산 프로그래밍을 고려하지 않았다.

 

"이 책이 필요한 사람"

- 이 책은 소프트웨어 제작을 직업으로 하는 전문 프로그래머를 위해 쓰였다.
- 객체지향 방식은 리팩토링을 실시하기에 아주 적합하다.
- 리팩토링이 코드 위주의 작업이긴 해도, 결과적으로 크게 바뀌는 것은 시스템의 설계 부분이다.
- 리팩토링은 권위 있고 경험 많은 개발자가 도입하는 것이 제일 좋다.

 

" 차려진 밥상에 수저 올리기"

- 십여 년 넘게 리팩토링 분야를 발전시켜온 이들의 경험과 이론을 토대로 이 책을 거저 집필한 거나 다름없다.

 


 

후기

리팩토링이라는 활동에 대해 회의적인 태도를 보이는 사람들도 적지 않다고 생각하고 또 경험하기도 했다.

리팩토링을 함으로 얻을 수 있는 좋은 점에 대해 체감하지 못한 분들은 리팩토링이라는 것에 대해 '하면 좋은건 알겠는데, 해본적이 없고 또 한다고 해도 뭐가 얼마나 좋아지는 건지도 모르겠다. 그냥 지금 해야 할 것(기능 개발)에 더 집중하자' 라는 태도를 보인다.

 

보통은 말 끝을 흐렸던 것 같다.

 

내가 이 책을 책장에서 꺼내든 것은 더 이상 미룰 수 없고, 또 미루고 싶지 않았음도 있지만

장기적으로 보다 다양한 사고와 프로그램을 바라보는 통찰을 얻고자 함이 크다.

물론 리팩토링하는 기술적인 부분도 중요하다고 생각하지만, 구현을 넘어 서비스를 제공한다는 관점에서 애플리케이션을 바라보는 시야와 통찰을 키우는 것이 목표다.

 

선배 개발자들의 오랜 시간의 경험을 거저 집필해주셨으니 부담감 없이 고마운 마음으로 즐겁게 날로 먹어야겠다.

 

 

 

 

728x90

'생각을 적바림 > 리팩토링' 카테고리의 다른 글

002 리팩토링 '옮긴이의 말'  (0) 2024.01.18

+ Recent posts