제이펍 출판사의 책을 받아서 작성된 리뷰입니다.
책 신청 이유
개발자로서 평소에 개발할 때 코드를 스캔 및 이해력 및 구현을 할 때 나의 뇌는 어떻게 생각을 하면서 코딩을 할까?라는 궁금증이 있었고 또한 책에서도 뇌를 알면 코드가 보이고 또한 개발자의 일머리를 개선할 수 있다는 내용이 있어서 더욱 신청하게 되었습니다.
목차
파트 1. 코드를 더 잘 읽기
- 코딩 중 겪는 혼란에 대한 이해
- 신속한 코드 분석
- 프로그래밍 문법 빠르게 배우기
- 복잡한 코드 읽는 방법
파트 2. 코드에 대해 생각하기
- 코드를 더 깊이 있게 이해하기
- 코딩 문제 해결을 더 잘하려면
- 생각의 버그
파트 3. 좋은 코드 작성하기
- 좋은 코드 작성하기
- 나쁜 코드와 인지 부하를 방지하는 두 가지 프레임워크
- 복잡한 문제 해결을 더 잘하려면
파트 4. 코딩에서의 협업
- 코드를 작성하는 행위
- 대규모 시스템의 설계와 개선
- 새로운 개발자 팀원의 적응 지원
서평
좋은 코드는 항상 중요합니다. 좋은 코드란? 전 평소에 본인보다 남들이 더욱 읽기 좋고 이해하기 좋은 코드가 좋은 코드라고 생각합니다. 이 책을 읽다 보면 4장 파트 1에 속한 복잡한 코드를 읽는 방법에 대해서 자세히 나와 있습니다.
평소에도 복잡한 구현체 및 메서드를 일단 분석할 때 이해가 안 되거나 코드를 계속 분석하면서 읽을 때 점점 앞에서 읽었던 코드의 대한 내용이 점점 희미해지거나 점점 기억에서 사라지거나 하는 케이스가 있을 것입니다. 이 책에서는 뇌과학적으로 STM, LTM, 작업 기억공간에 대한 명칭이 상당히 많이 나옵니다. 뇌가 하는 일로써는 당연한 것이었던 것입니다.
기본적으로 STM 단기 기억공간에 저장할 수 있는 단어가 많지가 않습니다. 많아봤자 5~7개 사이 그리고 이것에 대한 내용 또한 흥미로웠습니다.
책에서도 이렇게 다루는 세 인지 과정에 대한 내용도 이렇게 이미지로 설명이 되어 있어서 더욱 이해하기가 좋았습니다.
이건 변수의 이름을 읽을 때에 우리의 뇌가 어떻게 STM, LTM, 작업기억 공간에 어떻게 전송되는지 예시로 적혀있습니다.
그리고 책에서는 이렇게 코드 분석을 쉽게 하기 위해서 변수에 이렇게 동그라미를 하고 변수가 어떻게 값이 담기고 변하는지 이렇게 선으로 연결되어서 더욱 이해하기가 좋았어요.
또한 코드에서 이해한 부분은 체크를하고 아직 이해가 안 된 부분은? 표시를 해서 이렇게 이해 안 되는 부분을 다른 사람에게 도움을 요청할 때도 유용하다고 책에는 적혀있습니다.
단일 문자 변수로 많이 쓰이는 변수명과 타입을 이렇게 이미지로 보니 신기하였어요.
그리고 파트 3에서의 좋은 코드 작성하기에서
제일 공감되는 것은 역시 변수의 이름 또는 메서드 이름, 클래스의 이름을 작성하는 게 점점 경력이 늘수록 어렵더라고요.
이거에 대한 내용도 책에는 더욱 자세하게 있어서 저는 도움이 많이 되었던 것 같습니다.
마지막으로 제가 현재 백엔드 개발자로서 신입이 들어오거나 새로운 개발자가 들어왔을 때에
가르칠 때 어려움을 겪는 이유를 좀 느낀 적이 있었는데 이 책을 읽고 나서는 많은 생각이 들었습니다.
책에서는 전문가의 저주 때문이라고 적혀있어요. 이 말은 어떤 기술을 충분히 익히고 나면, 그 기술이나 지식을 배우는 것이 얼마나 어려웠는지 잊어버린다고 적혀있거든요. 이 책에 내용을 읽고 엄청 공감이 되었어요.
새로운 사람한테는 많은 것을 교육함으로써 작업 기억 공간의 용량을 과도하게 사용하게 하기 때문에 어려울 것이라고 적혀있더라고요.
이 책을 추천드리고 싶은 이유는 코드를 대할 때에 왜 이해가 안 되거나 또는 다른 사람의 코드를 봐서 이해가 쉽게 될 때
또는 가끔 코딩 신이 찾아오거나 다음날에 갑자기 문제가 잘 풀릴 때에서의 우리의 뇌가 어떻게 생각하고 그것을 반영했는지에 대해서 이 책을 읽으시면 더욱더 많은 것을 공감하실 수 있으실 것 같아서 추천드립니다. 감사합니다.
댓글