이전

리뷰 (18)

한줄평
평점 분포
  • 리뷰 총점10 33%
  • 리뷰 총점8 11%
  • 리뷰 총점6 50%
  • 리뷰 총점4 6%
  • 리뷰 총점2 0%
연령대별 평균 점수
  • 10대 0.0
  • 20대 0.0
  • 30대 0.0
  • 40대 7.0
  • 50대 7.0
리뷰 총점 종이책
유지보수의 바이블
"유지보수의 바이블" 내용보기
현업 개발자의 양대 필독서(?)로 알려져 있는 책입니다. '한손에는 디자인 패턴, 한손에는 리팩토링'이라는 말도 있지요 (도서광고에서 본 글귀였나?). 책 자체도 하드커버로 튼실하게 생긴 것이 맘에 듭니다. '리팩토링(Refactoring)'은 외부 동작을 바뀌지 않으면서 내부 코드를 개선해 나가는 방법을 의미합니다. 리팩토링은 프로그램이나 라이브러리를 이용하는 사용자들에게
"유지보수의 바이블" 내용보기
현업 개발자의 양대 필독서(?)로 알려져 있는 책입니다. '한손에는 디자인 패턴, 한손에는 리팩토링'이라는 말도 있지요 (도서광고에서 본 글귀였나?). 책 자체도 하드커버로 튼실하게 생긴 것이 맘에 듭니다. '리팩토링(Refactoring)'은 외부 동작을 바뀌지 않으면서 내부 코드를 개선해 나가는 방법을 의미합니다. 리팩토링은 프로그램이나 라이브러리를 이용하는 사용자들에게 리팩토링은 어떠한 이득도 가져다주지 않습니다. 겉으로 바뀌는 사항이 없으니까요. 그렇다고 개발자에게 당장 편의를 제공하는 것도 아닙니다. 오히려 제대로 돌고 있는 코드를 잘못 건드려 버그를 양산할 수도 있는 위험을 안고 있죠. 그럼에도 불구하고 리팩토링은 개발자의 입장에서 필수적으로 이루어져야 합니다. 당장의 편리함이 나중에 부메랑이 되어 돌아올 수 있습니다. 패치에 패치가 이루어지며 코드는 점점 늘어만 가고, 어느 시점을 넘어 버리면 도저히 손을 댈 수가 없는 수준으로 악화되는 상황을 많은 개발자들이 경험해 보았을 것입니다. 결국 이런 상황에서 새로운 기능을 추가하기 위해서는 훨씬 많은 작업이 필요하게 될 것입니다. 리팩토링을 통한 향상된 디자인은 소프트웨어 개발 속도 유지에 필수적인 요소입니다. 훨씬 쉽게 버그를 찾아낼 수 있으며, 빠른 코드 이해를 돕습니다. 새로운 기능의 구현은 리팩토링을 통하여 아랫부분을 튼튼하게 수리한 후에 이루어지는 것이 좋습니다. 기초가 부실한 빌딩만큼 위험한 것은 없으니까요. 책에 수록된 리팩토링 기법 자체는 별로 새로울 것이 없는 내용들입니다. 추상화하고, 쪼개고, 묶고, 올리고, 내리고, 바꾸는 일련의 방법들은 이미 많은 개발자들의 머리 속에 존재하고 있습니다. 이 책의 가치는 이런 방법론에 대한 설명에 있는 것이 아닙니다. 리팩토링이 왜 필요한지를 알고, 어디서 무엇 때문에 코드를 수리해야 하는 지를 깨달을 수만 있다면, 5장 이후의 리팩토링 기법들은 레퍼런스 이상의 의미는 없다고 생각합니다. 책에서는 java 코드로 설명을 하고 있지만, c++ 프로그래머가 읽기에 그리 어렵지 않습니다. 다만 예제 코드는 좀 마음에 들지 않는 것들이 많네요.

[인상깊은구절]
"I'm not a great programmer, I'm just a good programmer with great habits."
b****g 2005.08.21. 신고 공감 4 댓글 0
리뷰 총점 종이책
어두운 밤길의 스승! 필독하시길...
"어두운 밤길의 스승! 필독하시길..." 내용보기
초보티를 조금만 벗으면, 아니 어느정도의 수준이 되는 분이더라도 막상 코딩을 할때는 이렇게 할까 저렇게 할까 고민을 많이 하게 됩니다. 대개는 생각나는대로 기분에 따라 작업을 하지요. 이런 방식에 불만을 느끼는 많은 분들이 접하는것이 UML이나 디자인 패턴입니다. 그러나, 읽어보면 아시겠지만 정작 프로그래머의 갈증을 달래주는데는 한계가 있습니다. 너무 이론에만 치
"어두운 밤길의 스승! 필독하시길..." 내용보기
초보티를 조금만 벗으면, 아니 어느정도의 수준이 되는 분이더라도 막상 코딩을 할때는 이렇게 할까 저렇게 할까 고민을 많이 하게 됩니다. 대개는 생각나는대로 기분에 따라 작업을 하지요. 이런 방식에 불만을 느끼는 많은 분들이 접하는것이 UML이나 디자인 패턴입니다. 그러나, 읽어보면 아시겠지만 정작 프로그래머의 갈증을 달래주는데는 한계가 있습니다. 너무 이론에만 치중하다 보니까 읽을때는 끄덕이고 넘어가지만 막상 실무적용은 되지 않습니다. 저는 이 책을 친구의 추천으로 우연히 보게 되었는데 첫장을 넘기는 순간 대단히 감동받고 말았습니다. "복잡한 디자인은 오히려 낭비이다" 로 시작하는 서두에서 4장까지가 이책의 주요내용인데 절차지향적 코드가 차츰 객체지향적 코드로 바뀌어 가는 과정은 입이 딱 벌어지고 말았습니다. UML, 디자인패턴, 튜닝, 쉬운 유지보수등에 관심이 있다면 반드시 읽어보시길 추천합니다. 특히 주위에 좋은 스승이 없어 고민하시는 분들은 꼭 한번 읽어보세요. 마틴 파울러라는 자상한 스승을 모시게 될겁니다. 4장까지가 주요내용이고 읽어보는데는 크게 시간이 걸리지 않으며, 나머지는 필요하거나 시간이 남을때 틈틈이 읽으시면 됩니다. 저도 개발중에 몇가지 패턴을 적용시켜 보았는데 이전보다 훨씬 읽기 쉬운 코드로 변모함에 리팩토링의 강력한 힘을 확인할수 있었습니다.
k****2 2004.04.26. 신고 공감 3 댓글 0
리뷰 총점 종이책
말이 필요없다.
"말이 필요없다." 내용보기
나쁜 디자인코드를 좋은 디자인 코드로 바꾸는법이라고 책표지에 나와있습니다. 저에게 코드?혁명? 이라고 할만큼 도움이 되어준 책입니다. 무슨 말이냐하면 코드가 아주 조잡하고 엉망이었던 저에게 코드는 이렇게 짠다라는것. 최근엔 옛날과다르게 프로그램이 조금씩 커지면 조금씩 리팩토링해 나갑니다. 이책에는 코딩 노하우가 많습니다. 예를들어 코드를 수정할땐 조금씩 수정하며
"말이 필요없다." 내용보기
나쁜 디자인코드를 좋은 디자인 코드로 바꾸는법이라고 책표지에 나와있습니다. 저에게 코드?혁명? 이라고 할만큼 도움이 되어준 책입니다. 무슨 말이냐하면 코드가 아주 조잡하고 엉망이었던 저에게 코드는 이렇게 짠다라는것. 최근엔 옛날과다르게 프로그램이 조금씩 커지면 조금씩 리팩토링해 나갑니다. 이책에는 코딩 노하우가 많습니다. 예를들어 코드를 수정할땐 조금씩 수정하며 테스트한다든지 중복코드를 최대한 없앤다든지 객체지향적으로봤을때 이 메서드의 위치는 여기에 있어야 한다..란 내용이라든지 자체 테스트를 하는 클래스를 만든다든지. 정말 좋은 내용이 많습니다.^^ 사실? 전 자바랑 c++두개다 만지지만 역시 c++에서도 할수 있습니다. 물론 코드가 java로 되어있기때문에 c프로그램짜시는분들은 조금 보기 까탈스러울수도 있겠군요.
k*****8 2003.12.10. 신고 공감 2 댓글 0
리뷰 총점 종이책
디자인 패턴보다 선행되어야 할 필독서
"디자인 패턴보다 선행되어야 할 필독서" 내용보기
감히 이 책에 평가를 내린다는게 말이 되는가!!! 이것은 그림책이 아니고, 유용한 소스를 나열한 "베낌용" 참고서도 아니다. 어차피 이 책을 선택하는 개발자들의 안목은 이미 그 수준을 넘은지 오랠테지만, "예제소스 증후군"에 빠진 개발자들에게 유용한 책이 아님은 분명하다.   이 책에서 저자가 계속 강조하고 있는 "소스의 나쁜냄새". 나는 그 나쁜냄새의 정체를 파악하고
"디자인 패턴보다 선행되어야 할 필독서" 내용보기

감히 이 책에 평가를 내린다는게 말이 되는가!!!

이것은 그림책이 아니고, 유용한 소스를 나열한 "베낌용" 참고서도 아니다.

어차피 이 책을 선택하는 개발자들의 안목은 이미 그 수준을 넘은지 오랠테지만,

"예제소스 증후군"에 빠진 개발자들에게 유용한 책이 아님은 분명하다.

 

이 책에서 저자가 계속 강조하고 있는 "소스의 나쁜냄새".

나는 그 나쁜냄새의 정체를 파악하고 냄새를 맡을 수 있는 감각을 키우는게 이 책의 목표라고 생각한다.

그것은 누가 가르쳐주지도 않고, 가르쳐준다고 모두 이해할 수 있는 것도 아니다.

비법이 담긴 소스파일을 CD에 첨부하여 실전에 적용해볼 수 있는 그런 제한적인 지식을 다루는게 아니기 때문이다.

 

무엇보다,

디자인 패턴보다 반드시 선행되어야 할 것이다.

비대하여 숨이 막히고 나쁜 냄새로 가득찼다면, 디자인 패턴이 대체 무슨 힘을 발휘한단 말인가.

 

 

주의할 점은,

그림을 많이 기대하지 마시라.

소스도 많이 나열하지 않는다.

그렇다고, 번역이나 구성이 엉성하다는 평가를 받는건 정말 어처구니없는 처사다.

이것은 원서를 훼손하지 않은 거의 완벽한 수준의 번역서다.

훌륭한 이론서를 그림책으로 바꿨을거라 상상했다면 부디 꿈깨시라...

 

i*****s 2009.07.05. 신고 공감 0 댓글 0
리뷰 총점 종이책
실용적이고 현실적이며, 실천적이었다
" 실용적이고 현실적이며, 실천적이었다" 내용보기
리팩토링이란 좋지 않은 구조의 코드를 좋은 구조로 바꾸는 작업을 말합니다. 돌아가기만 하면 되지 구조가 뭐가 중요하냐고 생각하시는 분들은 아마 유지보수의 악몽을 경험해보시지 않은 분들일 것입니다. 실용주의 프로그래머란 책을 읽어보면 깨진 창문 법칙이란 얘기가 나옵니다. 창문이 하나 깨지고 나면 다른 창문이 깨지는걸 대수롭지 않게 여기게 되어, 결국 모든 창문은 깨지게
" 실용적이고 현실적이며, 실천적이었다" 내용보기
리팩토링이란 좋지 않은 구조의 코드를 좋은 구조로 바꾸는 작업을 말합니다.
 
돌아가기만 하면 되지 구조가 뭐가 중요하냐고 생각하시는 분들은 아마 유지보수의 악몽을 경험해보시지 않은 분들일 것입니다.
 
실용주의 프로그래머란 책을 읽어보면 깨진 창문 법칙이란 얘기가 나옵니다.
 
창문이 하나 깨지고 나면 다른 창문이 깨지는걸 대수롭지 않게 여기게 되어, 결국 모든 창문은 깨지게 된단 이야기입니다.
 
프로그램 코드도 마찬가지입니다. 지금 당장은 이렇게 하는게 문제 해결에 빨라. 우선 이렇게 해놓고 보자. 돌아가니까 내버려두자라고 생각해 대충 처리한 것들은 언제고 문제를 일으키기 마련입니다.
 
책서 언급한 리팩토링이 필요한 코드의 법칙에는 우리가 개발과정에서 느껴온 실수의 여지를 줄이는 방법이 있습니다.
 
우리의 머리는 대용량 컴퓨터가 아닙니다. 기억은 지워지기 쉽고, 직관적이지 않은 코드는 실수하기 쉽습니다.

메모의 기술이란 책에서는 이렇게 말합니다.
 
'기억하기 위해 메모하는 것이 아니라, 잊기 위해 메모하는 것이다'
 
사람의 기억은 믿을게 못됩니다. 리팩토링을 통해 직관적으로 바뀐 코드의 세세한 동작은 잊어버리셔도 됩니다. 

코드를 메모처럼 잊읍시다.
 
꺼림직한 코드를 작성했을때에 늘 후회하는 상황이 발생했습니다. 언제고 다시 리팩토링 해야 했기 때문이죠. 늘 작성한 코드를 리팩토링 대상으로 놓고 검토하고 수정한다면 유지보수의 악몽에서 벗어날 수 있을거라고 확신합니다.
 
리팩토링은 실천의 미학이기 때문이죠.
YES마니아 : 로얄 s*******4 2007.09.18. 신고 공감 0 댓글 0
리뷰 총점 종이책
최고의 책
"최고의 책" 내용보기
쉽게 그리고 적절하게! 스스로 작업한 내용을 누군가에게 보여줄 자신이 없다면 이책을 읽어라 라고 말하고 싶습니다. 좋은 코드를 만드는 것은 어려운 일이 아니고 복잡한 일도 아닙니다. 좀더 깊은 생각과 경험과 이책만 있으면 가능합니다. 저는 이책을 2번정도 읽고 나서야 이제껏 잘못되었던 부분이 무엇이였는지 조금씩 감이 잡히기 시작했습니다.   자신의 코드에서 이상한
"최고의 책" 내용보기

쉽게 그리고 적절하게!

스스로 작업한 내용을 누군가에게 보여줄 자신이 없다면 이책을 읽어라 라고 말하고 싶습니다.

좋은 코드를 만드는 것은 어려운 일이 아니고 복잡한 일도 아닙니다.

좀더 깊은 생각과 경험과 이책만 있으면 가능합니다.

저는 이책을 2번정도 읽고 나서야 이제껏 잘못되었던 부분이 무엇이였는지 조금씩 감이 잡히기 시작했습니다.

 

자신의 코드에서 이상한 냄새가 난다고 생각하신다면 당장 책을 구입하십시오.

t*******e 2007.02.24. 신고 공감 0 댓글 0
리뷰 총점 종이책
Refactoring 리팩토링
"Refactoring 리팩토링" 내용보기
이 책이야 머.. 설명할 필요도 없지만.. 이 책도 물론.. 한마디로 잼있다. 웹애플리케이션 프레임웍 이라는 책이. 프레임웍을 만들고 쓰면서.. 그냥 썻던.. 나에게... 개념들 사이의...틀어진 고리를. 이어줬다면.. 이건.. 코드 구현에서... 또한 패턴은 범주에까지... 많은 생각을 하게 만들어준 책이다.. 머 이렇게 말하면 상당히 거창하게 들리지만.. 단순하게 말해서.. 읽어보면 재미
"Refactoring 리팩토링" 내용보기
이 책이야 머.. 설명할 필요도 없지만.. 이 책도 물론.. 한마디로 잼있다. 웹애플리케이션 프레임웍 이라는 책이. 프레임웍을 만들고 쓰면서.. 그냥 썻던.. 나에게... 개념들 사이의...틀어진 고리를. 이어줬다면.. 이건.. 코드 구현에서... 또한 패턴은 범주에까지... 많은 생각을 하게 만들어준 책이다.. 머 이렇게 말하면 상당히 거창하게 들리지만.. 단순하게 말해서.. 읽어보면 재미있는 책이라는 거다. 사실.. 넘 간결하게 표현해놔서.. 한참을 읽어야 이해되는 부분들도 없지않아 있고.. 너무 함축적인 코드에.. 이 코드가 도대체 뭘 말하는지.. 한참을 고심해야 하는 부분도 있다. -_-;; 하지만 그래도.. 리팩토링에 대해선.. 이 책을 단연 추천한다.

[인상깊은구절]
컴퓨터가 읽을 수 있는 코드는 누구나 짤 수 있다.
j***o 2004.12.21. 신고 공감 0 댓글 0
리뷰 총점 종이책
쉬운듯 하면서도 깊이가 있는 책입니다.
"쉬운듯 하면서도 깊이가 있는 책입니다." 내용보기
샬롬! 개발자라면 대게 유사한 환경(OS, 언어, DB 등)에서 여러 프로젝트를 경험하게 됩니다. 그 공통에는 언어라는 것이 있습니다. 언어의 종류는 JAVA, Visual Basic, PHP, ASP, Visual C++ 등 많이 있지만 코딩의 기본 베이스는 모두 같이 먹고 살게 되는 법이지요. 따라서 개발자 마다 더 효일적이라고 생각하는 프로그래밍에 대한 공통적이거나, 개인적인 습관이 존재하기 마련입니
"쉬운듯 하면서도 깊이가 있는 책입니다." 내용보기
샬롬! 개발자라면 대게 유사한 환경(OS, 언어, DB 등)에서 여러 프로젝트를 경험하게 됩니다. 그 공통에는 언어라는 것이 있습니다. 언어의 종류는 JAVA, Visual Basic, PHP, ASP, Visual C++ 등 많이 있지만 코딩의 기본 베이스는 모두 같이 먹고 살게 되는 법이지요. 따라서 개발자 마다 더 효일적이라고 생각하는 프로그래밍에 대한 공통적이거나, 개인적인 습관이 존재하기 마련입니다. 실제 리팩토링은 여기에서 시작이 됩니다. 책을 읽다보면 '어? 이런 방법은 흔히 쓰이는 거잖아?'라고 생각되는 것들이 다수 존재합니다. 그 만큼 리팩토링은 개발자들이 한 번쯤은 생각하거나, 겪어봤을 내용들로 구성이 되어있습니다. 다만, 이 책은 초급자에게는 어려울 수 있습니다. 모든 소스가 자바이기에 기타 언어 사용자들에게도 부담스러울 수가 있지만, 소장가치가 있으며, 개발자로서의 스킬향상에 도움이 될 것입니다
d****s 2003.10.06. 신고 공감 0 댓글 0
리뷰 총점 종이책
견고한 프로젝트를 위한 지침서
"견고한 프로젝트를 위한 지침서" 내용보기
"잘 돌아가는 코드는 절대 바꾸지 마라" 멀쩡히 돌아가는 소스코드에 섣불리 손댔다가 산더미같이 쏟아지는 에러에 당황한 경험이 누구나 한번쯤은 있을 것이다. 프로젝트가 커지다 보면 그때그때 땜질 처방으로 "어쨌든 돌아가기는 하는" 누더기 소스가 되어 버리게 되고, 이게 어느정도 쌓이다 보면 작은 수정사항을 적용하기 위해 오래전에 작성한 코드들을 살펴보느라 한나절을 보내
"견고한 프로젝트를 위한 지침서" 내용보기
"잘 돌아가는 코드는 절대 바꾸지 마라" 멀쩡히 돌아가는 소스코드에 섣불리 손댔다가 산더미같이 쏟아지는 에러에 당황한 경험이 누구나 한번쯤은 있을 것이다. 프로젝트가 커지다 보면 그때그때 땜질 처방으로 "어쨌든 돌아가기는 하는" 누더기 소스가 되어 버리게 되고, 이게 어느정도 쌓이다 보면 작은 수정사항을 적용하기 위해 오래전에 작성한 코드들을 살펴보느라 한나절을 보내기도 한다. 이런 경험을 가진 사람이라면 반드시 보아야 할 책이 바로 Refactoring이다. 굳이 따로 배우지 않았어도 코드의 명확성을 위해 중복된 코드를 별도의 메소드로 빼 내고 네이밍에 신경쓰는 것은 스스로 깨우치는 내용들이지만, 그것을 뛰어넘어 다시 쳐다보기 싫은 프로젝트를 간결하게 만들어 주는 많은 아이디어는 시간을 투자할 만한 가치가 있다. 디자인패턴처럼 무작정 첫 챕터부터 읽는것보다는 차례를 한번 쓱 훑어 본 다음, 당장 쓸만한 기술부터 하나씩 실무에 적용해 본다면 좋은 효과를 볼 수 있을 것이다. 어쨌든 작동하게 만들고 보자! 는 초보의 딱지를 막 떼어버린 개발자들에게 자신의 프로그램 방법의 뒤돌아보고 한단계 도약하는 좋은 발판이 될 것이다. 디자인패턴보다는 확실히 쉬우니 이거부터 본 다음 디자인패턴을 보면 깔끔하고 폼나는 코드를 만들 수 있을 것이다.
m*******7 2002.12.18. 신고 공감 0 댓글 0
리뷰 총점 종이책
백지위에 다시 그려라.
"백지위에 다시 그려라." 내용보기
경영기법에 리엔지니어링이라는 것이 있습니다. 그 요지는 조직을 백지위에 다시 그리는 것입니다. 즉, 조직을 분해하고 군더더기를 완전히 제거한 뒤 다시 구성하는 것이 리엔지니어링입니다. 리팩토링도 그런것 같습니다. 디자인을 순간순간 다시 그리는 것입니다. 그리고 그 군더더기를 제거하고 새로운 디자인으로 태어나는 것입니다. 이 책은 바이블입니다. 하지만 이 책에서 제시
"백지위에 다시 그려라." 내용보기
경영기법에 리엔지니어링이라는 것이 있습니다. 그 요지는 조직을 백지위에 다시 그리는 것입니다. 즉, 조직을 분해하고 군더더기를 완전히 제거한 뒤 다시 구성하는 것이 리엔지니어링입니다. 리팩토링도 그런것 같습니다. 디자인을 순간순간 다시 그리는 것입니다. 그리고 그 군더더기를 제거하고 새로운 디자인으로 태어나는 것입니다. 이 책은 바이블입니다. 하지만 이 책에서 제시하는 리팩토링 룰을 반드시 따라야만 하는 것은 아닙니다. 아이디어와 방향만을 취해야 합니다. 그리고 자신만의 리팩토링을 해보시길... Design Pattern이나 eXtreme Programming과 같은 책과 함께 보면 좋을 것 같습니다.
j*****r 2003.01.06. 신고 공감 0 댓글 0