책 게시판 만든 기념 첫 글을 작성한다.
정작 책은 1월에 읽었던거지만... 수업 교재 외에 자의로 개발 서적을 읽은건 처음이라 기념으로 작성!
http://book.naver.com/bookdb/book_detail.nhn?bid=9145968
책을 읽으며 정리한 글
이 책은 우아한 형제들에서 근무하시는 김영한님 강의에서 추천받고 읽게 된 책이다.
강의에서 '역할, 책임, 협력'에 관해서 강조를 많이 하셨는데 감이 잡힐랑말랑 하다가 책을 읽고 이해했다.
'행동이 상태를 결정한다'
사실 무의식적으로 계속 행동에 초점을 맞춰 프로젝트를 구성했던 것 같기는 하다.
주제를 잡은 후에 구현하고 싶은 기능들을 우선적으로 선정하다보니 자연스레 상태보단 행동이 먼저였다.
하지만 '객체의 자율적인 책임'을 잘 지키진 못했다.
대학교 2학년 때쯤 만든 프로젝트의 코드를 재사용할 수 있느냐, 라고 물어본다면 강력하게 고개를 저을 것이다...
내가 구현한 방식으로는 한 책임에 대해 그 객체에서만 사용하다시피 했다.
물론 복잡한 수준의 코드를 구성하지 않아서 그런 것일수도 있지만 책임에 대해 이해도 없이 코드를 구성해서 그렇게 된 것 같다.
예를 들어 자주 사용하는 메소드에 대해서는 한 파일로 묶어서 import 시켜서 사용할 수 있을텐데도 불구하고,
클래스마다 메소드를 선언하던 식의 주먹구구 코드로 존재했다.
난 아직 경력 1년도 못채운 신입이기도 하고...
사실 설계를 할 일은 없고 기존 코드의 로직을 분석하는 일이 더 많다보니 아직 좋은 설계에 대한 감은 못잡겠다.
나중에 경험을 쌓고 이 책을 다시 읽게 되면 다른 시선으로 볼 수 있을까? 아직은 잘 모르겠다.
이제 막 Java를 막 시작한 입문자들, 객체가 뭐였지? 수준의 기초를 잘 모르는 사람들에게는 비추천한다.
객체가 뭔지, 캡슐화가 뭔지 대충은 이해하고 '최소한의' 전공 지식은 있는 상태에서 보는 것이 읽기 수월할 것 같다.
코드 없이 그림과 말로 설명을 해주긴 하는데... 예시가 난해해서 오히려 더 헷갈렸다 ㅠㅠ
꼭 이상한 나라의 앨리스로 설명을 해야했나 싶은.... 솔직한 마음...
이 글을 쓰면서 다른 사람의 책 후기나 정리글들을 봤는데 정리를 참 잘해놨다.
난해하다고 느껴지던 예시를 다르게 표현하거나 새로운 예시를 만들고..
코드로 구현한 사람들도 있더라.
하지만 저런 후기글들만 보는거보단 책을 직접 한번 읽어보는걸 추천한다.
원본을 알고 읽는거랑 모르고 읽는거랑은 확연히 다를 것이므로...
'Memo > 책 읽기' 카테고리의 다른 글
[책 후기] 최고의 팀은 무엇이 다른가 (0) | 2022.08.02 |
---|---|
[책 후기] 스프링5 프로그래밍 입문 (5) | 2022.06.15 |
[책 후기] 함께 자라기 (4) | 2022.03.05 |
[책 후기] 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (0) | 2021.09.03 |
[책 후기] 자바 성능 튜닝 이야기 (0) | 2021.06.18 |