b

Elemental Design Patterns / 한빛 미디어 본문

life/book

Elemental Design Patterns / 한빛 미디어

dev.bistro 2013. 11. 30. 14:28

아래 리뷰를 보는데 참고가 될것 같아서 제 소개를 짧게 해보면

 - 8년차 개발자 / Java Backend  FrontEnd Developer / 그외 Scala, Python등을 추가로 사용하며

 - 오픈소스, 선행기술에 관심이 있다.





디자인 패턴은 항상 회자되며, 이야기거리의 중심이 되곤 한다. 하지만, 이 패턴이라는것의 모호한 개념만을 가진채 '아 ~ 난 디자인 패턴을 적용하고 있는건가?' '이게 이 패턴이 맞는건가?' 라는 고민을 항상 가졌다


그러던 와중에 이 책을 알게 되었다. GoF의 패턴을 몇년전에 읽고 감동을 받았지만, 실제로 현업에서는 적용 할수 없었다. 아니 적용은 모르게 계속 하고 있었지만 이게 그 패턴인지도 몰랐다가 정확한 표현같다 하나의 패턴을 적용하기엔 너무 다양한 변수와 환경, 심지어는 언어 조차도 달랐기 때문이다


엘리멘틀 디자인 패턴(EDP)는 이런 패턴을 쪼개어서 최소한의 단위로 살펴본다.  ( 5장의 실제 EDP를 소개하는 첫 부분에서는 '갱체생성', '변수가져오기', '상속'등 아주 기본적인것도 패턴이라 정의한다. )


이 책은 솔직히 어렵다. 기존의 기술서적이 재미있게 한장 한장 넘겼다면, 이 책은 조용한 도서관에서 한 줄 한줄 곱씹어 보면서 책을 봤다. 그래서 이해가 안되어서 형광펜으로 줄을 그으면서 다시보고 다시보고... 심지어는 다 보지도 못했다.-_- 책의 내용을 뭐라 설명하는게 미안할 정도로 내가 이해하는게 맞나? 라는 불확신도 들고....


그래도 

- 가장 기본이 되는 EDP 4종 되부름, 위임, 리디렉션, 병합이라는 개념은 몰랐지만, 내가 하루에 몇개씩 생산해내며, 수십번씩 보고 있다는 것을 알았고, 이것들을 EDP라는 최소한의 패턴으로 정의를 해놓았다는 것을 알았다.

- 내가 암기나 학교에서 배운것들을 단순히 암기나 현장의 경험으로 통해 익혀서, 무자각적으로 '판단'없이 적용해 버렸다는 사실을 깨닫았다.

- 그리고 패턴은 언어의 종류와 상관없다 라고 하지만 이 책에서는 '자신이 구현할 언어가 디자인 패턴을 표현할 방법을 선택하는데 가장 큰 영향을 미친다'라고 한다.   (5장 첫부분 137Page - 패턴자체를 언어레벨에서 구현하는 경우등이 존재)


책을 읽고 나서 당장 무엇인가를 바꿀만한 임팩트는 없다. 하지만 몇가지의  깨닫음을 얻었고, 그것으로 충분했다. 나같은 포지션 뿐 아니라, 어느 정도 정체기를 격고 있거나, 패기 충분한 신입개발자도 읽어보면 도움이 될것 같다.  특히 1 ~ 5장은 꼭 읽었으면 하는 바램이다.






Comments