안녕하세요 안녕주입니다..! 방학이 되어 진짜 스프링 공부를 제대로 시작해보려고 합니다.!
과거에 썼던 글이 지금도 알아보기 힘들어서 어떤 강의 & 어떤 책으로 공부 했고 하고싶은지 등등을 다시 정리 하겠습니다!
책
[스프링부트와 AWS로 혼자 구현하는 웹 서비스]로 예제 코드들을 따라치며 공부했는데,
어렵지 않고 처음에 공부하기 쉽다는 생각을 했습니다!
[자바 ORM 표준 JPA 프로그래밍]은 보진 못했지만 유명하고... 김영한 님이 워낙 유명하시기에
기회가 될때 구매해서 공부해볼 예정입니다.
예... 필독서죠,,,? 버전이 너무 예전꺼라 이해가 될지 모르겠지만, 모르는 개념들을 한번씩 찾아볼때 좋다고 합니다!
<아래서 부터는 개발할때 도움이 될 지식을 주는 책들>
서버 개발자가 될 거라면 꼭 읽어보고 공부해야할.. 클린코드
객체지향 언어를 사용하다보니,,, 객체지향의 사실과 오해 책은..필독서 입니다..
디자인패턴! 공부 책
인강
초보라면 우선 인프런의 로드맵대로 강의를 듣는 것을 추천드립니다.! 처음에 강의부터 들었을 때 이해하기 어려울 수 있어서, 책으로 먼저 가볍게 공부를 한 다음에, 강의를 2회독 정도를 하면 2회차때 이제 아..... 대강 알아 듣겠다..! 하겠더라고요.....
어렵더라도.. 오래 걸리더라도 포기하지 않고 공부하는 게 중요하다는것을 깨달았던 것 같습니다!
저도 작년에 강의 듣다가 하나도 모르겠어서 포기하고 다른 공부를 하다가 일년이 지난 지금 이제서야 조금 이해가 되기 시작하더라고요
나만 모르겠는게 아니라 모두가 어려워하는 것이니까 포기하지 않고 꾸준하게 천천히 공부해봅시다!!
왼쪽의 강의 같은 경우에는 스프링&자바 개발을 하기 위해서 필요한 객체지향적인 설계! 에 대한 이야기가 메인입니다! 어떻게 프로젝트를 설계해야하고 어떤 식으로 문제를 풀어나가야하는지에 대한 내용이라 정말 중요한 것 같습니다. 하지만 처음에 하기엔 너무 어렵다고 생각할 수 있기에 개발을 어느정도 한번 해보신분이라면 왼쪽 커리큘럼 먼저 듣는걸 추천드립니다.
오른쪽의 강의 같은 경우에는 실제로 api 개발을 하는 내용이 많습니다. 왼쪽 보다는 오른쪽 커리큘럼을 타는 경우에는 빠르게 개발이 가능합니다.
본인이 어떤 상태인지, 그리고 어떤 공부 스타일을 지향하는냐에 따라 우선순위를 세워서 공부하는 것을 추천드립니다.
하지만... 뭐가 되었든 간에... 일단 뚜들겨 맞으면서 개발 해보는거 추천...
그리고 예전에 구글링 하면서 백엔드 공부를 위해 꼭 알아야하는 개념들 기록해둔것
- 백엔드: 자바 기초 배우기
- 객체 지향 프로그래밍, 파일 IO, 멀티 스레드의 개념을 꼭 배우시길 바랍니다.
- 유닛 테스트를 꼭 잘 배우시구요. 로그 라이브러리 사용법도 알아야 합니다.
- 자료 구조 중 list, map의 용도와 사용법, 그리고 하위 클래스들의 사용법은 필수입니다.
- 가능하다면 TDD를 해 보시고, 좋은지 나쁜지는 스스로 판단하시기 바랍니다.
- 이클립스(혹은 inteliJ)와 같은 IDE 사용법, 그리고 maven과 gradle의 기초에 대해서도 배워야 합니다.
- 프론트엔드 분야: Javascript, HTML, CSS, JQuery, Angular.JS, React.JS 등의 지식을 습득합니다.
- box model의 이해, 프론트 엔드 개발 도구들, 기타 등
- 데이터베이스 기초: 관계형 데이터베이스, NoSQL(mongdb), 웹 서버와 데이터베이스의 연동에 대해 공부합니다.
- VirtualBox또는 AWS, Heroku 등을 이용한 내 서버 마련하기, 그리고 추가적으로 클라우스 서비스에 대해서도 가볍게 공부하시길 권합니다.
- 네트워크의 기초: tcp/ip, 소켓의원리, http의 구조, 웹 서버와 웹 브라우저의 동작 원리 등에 대해서도 아시는 게 좋습니다.
- REST API: 웹 페이지와 웹 서비스와의 차이점, REST API란 무엇인가?
백엔드 개발자 초보 탈출!
초보를 탈출하고 나서 여러분들에게 도움이 될 만한 것들을 나열해 보았습니다.
- 백엔드 심도있게 공부해보기 (아무래도 스프링이 좋은 것 같아요. 다른 것도 괜찮습니다.)
- 디자인 패턴 (head first desgin pattern이 좋다고 합니다.)
- effective Java 읽어 보기
- 다른 소스 많이 읽고 많이 짜 보기 (개인적으로 이희승님의 netty를 공부하는 걸 추천합니다.)
- reflection, generic에 대해 조금 더 깊게 배워야 할 것 같습니다.
- virtual machine의 동작 원리, 가비지 콜렉션의 원리, bytecode의 이해
- 성능 프로파일링 도구
- 로그 수집 툴
<자바 개발자 로드맵>
<백엔드 개발자 로드맵>
https://skmouse.tistory.com/entry/2021-JAVA-백엔드-개발자-로드맵
'My > 공부방법' 카테고리의 다른 글
취준 & 개발에 유용한 링크들 정리 _ 백엔드 (0) | 2023.01.09 |
---|---|
프론트엔드, 백엔드 공부 방법 (0) | 2021.01.25 |
프론트엔드 개발자, 백엔드 개발자 무엇을 선택할까? (0) | 2021.01.25 |
코딩테스트 공부 방법 (0) | 2021.01.25 |
댓글