https://okky.kr/articles/1460429#note-1709476
이번 글은 MapBook 개선 내용은 아니다. 나와 같이 개발자가 되려고 열심히 노력 하는 분들 중 몇 분이 좋게 봐주셔서 학습 방법들을 질문하셨다. 선배 개발자 분들에게 좋은 피드백을 얻고 도움을 많이 받았기에 나도 부족하지만 좋은 영향력을 미쳐야 하는 것이 당연하다고 생각 했다. 그래서 자아아앙문의 댓글로 내 학습 방식을 말씀 드렸다.
적기 전에는 몰랐는데, 그래도 부트 캠프 하면서 좋은 영향력을 많이 끼치긴 했구나 하는 생각에 절로 기특 해졌다. ㅎㅎ (몇몇 동기들은 TMI로 피곤해 했겠지...)
아래는 오키에 올린 댓글 내용을 옮겨 놓았다.
(이거는 부트 캠프가 끝날 때, 동기들의 투표로 받게 된 상 ㅎㅎ)
안녕하세요! 부족하지만 좋게 봐주셔서 감사합니다.
아래는 제가 학습 했던 도서 목록 입니다. 다시 최신화 해보니 24권이네요. 도서에 대한 선택 방식은 하나의 영역을 공부하다 궁금한 것이 생기면 그 영역의 책 중 저한테 제일 잘 맞는 책을 직접 서점 가서 찾아보고 학습 했습니다. 다시 돌이켜 보면 호기심이 가장 큰 원동력이 된 것 같네요.(아래의 내용은 주니어 개발자로써 부정확한 내용이 많을 수 있으니 참고하기실 바랍니다)
Java에서의 학습 방식은 책에 나와 있는 코드는 한번 읽고 나면 안보고 복기하며 칠 수 있을 정도로 코드의 흐름 들을 파악하며 학습하고요. ( '프로그래머의 뇌'라는 책을 보니 코드는 작성보다 읽는 능력이 더 중요하다고 하더군요 ㅎㅎ;) 제네릭이나 스트림처럼 처음 봤을 때, '이게 대체 왜 필요 한거지' 라는 의문이 드는 개념들은 필요 이유를 찾을 때까지 좀 깊게 학습 했습니다. 그 과정에서 '생활 코딩'님의 명쾌한 설명이 큰 도움이 됐고요.
저는 9개월 독학하고 3개월을 부트 캠프에서 학습 했는데, 부트 캠프가 워낙 방치형 성장 게임 같았어서...ㅎㅎ;; 부트 캠프에서 처음 프로그래밍을 시작하는 동기들이 많았는데, 하루 반나절은 질문 듣고 해결하는 거 도와주거나 설명 해주는 과정이 성장에 도움이 많이 된 것 같아요. 역시나 설명하면서 제가 몰랐던 부분을 파악하는 것도 있었고요. 그리고 제일 좋았던 게 동기의 코드 문제를 같이 해결하는 과정에서 그 사람의 질문 의도나 필요한 부분을 파악하는 능력을 키울 수 있어서 좋았어요. '이걸 몰라서 지금 헤매고 계신 것 같아요' 라는 의견을 제시 해주니 동기들이 많이 좋아 해주더군요 ( 근데 TMI로 곁가지도 설명 해서 좀 피곤해 하긴 했어요)
- 모던파이썬 입문 - 아나 벨 저 / 길벗
(처음 프로그래밍 세계로 입문한 책. 내용은 사실 잘 기억은 안 나지만, 맨 첫 장 '객체'에 대한 설명이 꽤 인상 깊었음)
- 한 권으로 읽는 컴퓨터 구조와 프로그래밍 - 조너선 스타인하트
(어렵지만 내용이 자세하고 좋습니다. 정말 전공자 수준의 공학 지식이 바탕이 돼야 더 재밌게 볼 수 있는 책인 거 같음)
쉽게 배우는 운영체제 - 조성호 저
(쉽게 비유를 통한 설명이 좋았음. 이 책 공부하면서 자료구조가 왜 필요하구나를 알게 됨)
네트워크 개론 - 진혜진 저
(네트워크 쪽을 워낙 어려워해서 유튜브 '널널한 개발자'님꺼 먼저 듣고 학습)
Do it! 자료구조와 함께 배우는 알고리즘 입문: 자바 편 - 시바타보요 저
(시바타보요 저자의 친절하고 상세한 설명... 팬 입니다... 스택부터 시작해서 직접 구현해보는 작업이 정말 재밌음)
자바로 배우는 핵심 자료구조와 알고리즘 - 엘런 B 다우니
( 자료구조도 자료구조지만 자바 Collection 프레임워크의 각 구현체들의 비교 사항을 알 수 있음.)
데이터베이스 개론 - 김연희 저 / 한빛아카데미
(스키마가 뭐고, 튜블이 뭐고 등 데이터베이스의 전체적인 개념을 알 수 있어서 좋았음)
Real MySQL 8.0 1권 - 백은빈, 이성욱 저 / 위키북스
( Mysql 내부가 어떻게 작동하는 지 상세하게 알 수 있음)
SQL 레벨업 - 미크 저
(SQL문에서 사소한 차이로 만들 수 있는 성능 차이에 대한 설명이 좋음)
Do it! 알고리즘 코딩 테스트: 자바 편 - 김종관 저 / 이지스퍼블리싱
이것이 취업을 위한 코딩 테스트다 with 파이썬 - 나동빈 저
미래를 바꾼 아홉 가지 알고리즘 - 존 맥코믹 저 / 에이콘출판
(가볍게 일반인을 위한 알고리즘 책이긴 한데, 내용이 워낙 좋음. 특히 key 교환 방식의 알고리즘을 페인트에 비유한 설명이 일품)
이펙티브 자바 - 조슈아 블로치 / 인사이트
(자바의 성능을 극대화하며 진짜 자바를 자바답게 쓸 수 있게 해주는 책. 상세하게 설명하진 않아서 계속 보면 볼 수록 감탄하는 책)
자바의 정석 - 남궁서 저 / 도우출판
(자바 코드 연습을 많이 할 수 있게 도와줬던 고마운 책)
개념있는 JAVA - 시바타 보요 저 / 영진닷컴
(맨 처음 자바를 익힐 때 학습한 책. 클래스, 인터페이스, 멤버 변수 등등 처음엔 이해하기 어려운 객체 지향이나 자료구조 개념을 도식화한 그림을 통해 쉽게 설명)
JAVA 객체지향 디자인 패턴 - 정인상,채흥석 저 / 한빛미디어
(저어엉어어엉어말 좋아하는 책. 덕분에 Spring을 더 좋아하게 만들어 준 책. 스프링을 공부하기 전에 반드시 먼저 봐야 하는 책. 사실 이 책에 한정이 아니라 디자인 패턴 책이면 모두 OK)
스프링 입문을 위한 자바 객체 지향의 원리와 이해 - 김종민 / 위키북스
(얕게만 알고 있던 객체 지향의 개념, 원칙 등을 정말 명쾌하게 설명한 책. 이 책 너무 좋음)
토비의 스프링 3.1 1, 2 편 - 이일민 저 / 에이콘 출판
(초보자에겐 효율이 나지 않는다는 말을 많이 들어 처음엔 많이 망설였던 책. 하지만 내 최애의 책. JDBC connection부터 시작해서 템플릿 패턴을 통해 바꿔가고 결국엔 AOP를 활용한 @Transatinal로 바뀌는 일련의 과정과 같은 내용들을 자세히 알 수 있어서 좋은 책. Spring를 사랑하게 만들어준 책)
스프링5 프로그래밍 입문 - 최범균 저 / 가메
(최신 스프링의 기술들을 빠르게 접목하고 학습할 수 있는 책. 내용은 토비의 스프링에 비해 생략되는 부분이 조금 있어서 토비의 스프링과 함께 보면 좋음)
자바 웹 개발 워크북 - 구멍가게 코딩단 저 / 프리렉
( 빠르게 프로젝트를 만들어보고 실전에 적용해 볼 수 있어서 좋음. 자세한 원리는 생략이 많아 스프링 쓰다가 기억이 나지 않는 부분을 찾을 때 좋음)
자바 ORM 표준 JPA 프로그래밍 - 김영한 저 / 에이콘 출판
(학습 당시 JPA에 대한 전문 서적이 이 책이 유일 했음. 설명도 명쾌하고 좋음. jpa의 entityManager의 작동 원리가 제일 인상 깊었음)
스프링 시큐리티 인 액션 - 로렌티우 스필카 저 / 위키북스
( 2번 학습을 했어도 어려운 시큐리티... 책의 설명은 상세하고 좋음. 시큐리티가 어렵게 느껴질 뿐... 네트워크에 대한 개념이 부족하면 더 어려울 수 있음)
처음 해보는 Servlet & JSP 웹 프로그래밍 - 오정임 저 / 루피페이퍼
(spring boot에서 흔적을 찾아 볼 수 없는 서블릿이지만 스프링이 웹 기술을 어떻게 다루는지 알 수 있어서 좋았음. 너무 친절한 설명이 좋음. JSP는... 문법보단 servlet 을 통한 서버 사이드 렌더링이구나 하는 개념을 익혀서 좋았음. 실제 JSP가 변환된 코드를 보며 신기)
HTML+CSS+자바스크립트 웹 표준의 정석 - 고경희 저 / 이지스퍼블리싱
(프론트 영역을 만들 때, 도움이 많이 됐던 책. 일목요연하게 잘 정리되어 있어 찾아보면서 학습하기 좋음)