자바를 어디까지 배워야 할까요?
간단한 외부 프로젝트 몇 개 해본 취업을 희망하지 않는 학생이고, 혼자서 서비스를 개발하고 있습니다.
Spring 의 기본적인 사용법 정도 아는 단계이고, 흘러가는 매커니즘에 대한 부분 정도만 알고 있습니다.
레이어 관점에서 리팩토링하고, 객체지향 관점에서 제 코드를 리팩토링을 하고 있습니다.
저는 로우레벨에서 커스터마이징 할 수 있는 수준은 되지 않고, 자바 역시 java8 이상을 능숙하게 다루지 못합니다.
최근에, 견고한 소프트웨어를 만들고 싶어서 무작정 설계하거나 남의 코드를 클론하는 행위를 하지 않다 보니
설계 영역에서 자바를 제대로 알지 못하면 견고한 소프트웨어를 만들 자신이 없더라고요..
답변자분들은 현재 웹 개발을 하면서 자바를 공부하시는 편인가요?
공부를 하신다면, 어떤 부분을 주로 공부하시는지 어떻게 학습하시는 지 궁금합니다.
최근에는 printStacktrace() 의 쌓이는 원리를 이해하기 위해 만들어 보기도 하고
Spring 의 Field Injection 을 자바에서 리플렉션으로 구현해보기도 하고
매 번 사용하던 컨트롤러를 추상화시켜 제네릭 컨트롤러로 만들어서 처리해보기도 하니
이전에 사용하던 코딩 컨벤션과 습관들이 전부 무의미한 것처럼 느껴져 계속 배우기만 하고 있습니다..
작성한 코드에 어떤 부분이 어디까지 유효한지에 대해서 혼자서 검증하고 작성하다 보니 끝이 보이지가 않네요.
딜레마에 빠지는 거 같아서 진행 중이던 프로젝트를 리팩토링만 하고 리팩토링만 하고..
내가 해당 서비스를 책임질 수 있을까에 대한 생각이 계속 듭니다...
이런 딜레마를 어떻게 극복하셨나요??
자바를 어디까지 배워야 할까요?
일단 자바의 기본적인 문법을 아신다고 하면 조슈아 블리치의 이펙티브 자바라는 책을 추천드립니다.
이미 보셨고 책의 90% 이상을 이해하신다 하면 자바의 기본적인 소양은 가지고 있다고 개인적으로 생각합니다.저는 자바를 2000년 부터 21년째 공부를 하고 있지만,
개인적으로는 깊이 들어가면 들어갈 수록 더 알아야 할 것이 많아짐을 느낍니다.
따라서 혼자서는 모든 것을 완전히 파악하기는 어렵다라는 결론을 내렸습니다.어디까지 배워야 한다는 질문을 하셨습니다.
저는 이 질문에 앞서서 "자바로 무엇을 하고 싶은지?" "무엇을 해야하는지?"에 대해 먼저 생각해보시면 좋을 것 같습니다.왜냐하면 자바는 목적을 이루기 위한 하나의 수단(방편)이기 때문입니다.
위의 질문을 "소프트웨어의 궁극적인 목적은 사용자를 만족시키는 것"이라는 것을 이야기하고 있습니다.
따라서 자바를 배우는 수준은 현재 목적을 이루기 위해 적정 수준으로 알면 되지 않을까 생각해봅니다.프로그래밍은 많이 해보면 해볼수록 실력이 늘어나는 것 같습니다.
물론 아무런 생각 없이 프로그래밍을 한다면 실력이 늘어날수는 없겠지만 보통은 이 코드를 어떻게 개선해볼까? 이런 고민을 많이하다보니 많이 해보는 것이 좋은 방법 같습니다.
또한 다른사람이 만든 코드도 잘 보는 것이 중요합니다.
잘만들어진 코드는 따라해보고 개선해본다면 더 좋을 것 같습니다.
안녕하세요.
요즘 파이썬이 대세라고는 알려져있습니다.
보편적으로 웹개발이 취업하기도 광범위합니다.
또한 기본적으로 java는독학하기에도 수월합니다.
자바스크립트를 시작으로해서 앞부분 프론트를 마무리하고 java로 들어서면서 서비스쪽(조금 더 디테일하게) 배우는것이 괜찮을 것 같습니다.
자바스크립트는 현재 많이 사용중이므로 쉽게 접근하실 수 있습니다.
감사합니다.