안녕하세요! 제 개인적인 경험을 토대로 말씀드리겠습니다. 이건 지극히 제 개인적인 생각이기 때문에 정답이라고 할 순 없으니 참고만 해주셨으면 좋겠습니다. 저는 프로그래밍을 크게 '도구' 와 '도구를 쓰는 방법' 을 알아야 할 수 있는 것이라고 생각합니다. 실생활에서 예를 들면 드라이버라는 도구를 저희가 처음 접했을 때 이 드라이버가 언제 필요한 것이고 손잡이가 어디에 있으며 무슨 종류가 있는지 등의 '드라이버' 에 대해 파악합니다. 그런 다음에 드라이버를 어떻게 잡아야 하고 나사를 어떻게 꽂아야 하고 어느 방향으로 돌려야 쓸수 있다는 등의 '드라이버를 쓰는 방법' 을 배우게 됩니다. 이처럼 저희가 뭔가를 하려면 사용하려고 하는 '도구' 에 대해 먼저 파악이 되야 그다음 '도구를 쓰는 방법' 을 진행해 볼 수 있는데요 프로그래밍도 이와 마찬가지라고 생각합니다. 나열해주신걸 토대로 '도구' 와 '도구를 쓰는 방법' 을 분류해보면, Java, SQL, JPA, Spring boot 가 '도구' 에 속하는 것이고 DDD, TDD, Clean Architecture, Design Pattern, 혹은 위에 나열된 '도구' 들에 대한 beat practice 등이 '도구를 쓰는 방법' 에 속하게 됩니다. 이에 따라 먼저 Java, SQL, JPA, Spring boot 를 일단 먼저 공부해보시고 이후 업무를 진행하시거나 사이드 프로젝트 등을 진행하시면서 DDD, TDD, Clean Architecture, Design Pattern, Beat Practice 등을 탐구하시면서 발전시켜 나가면 좋지 않을까 싶습니다. 도구와, 쓰는 방법 내에서의 우선순위는 진행하시는 업무에서 가장 많이 사용하거나 중요도를 파악하셔서 우선순위를 정하시면 좋지 않을까 싶습니다. 참고로 DDD, TDD, Clean Architecture, Design Pattern 등이 위에서 언급한 '도구' 에 속하는 내용보다 안좋거나 떨어지기에 우선순위를 낮춰야한다는 말은 절대 아닙니다. 다만, 순서상 먼저 '도구' 가 어떤건지를 정확하게 알아야지 그 뒤에 '쓰는 방법' 을 해볼 수 있다는 의미로 이해해주시면 되겠습니다. 모든 배움이 그렇듯이 빠르게 배울 수 있으면 좋겠지만 그게 쉽지 않기 때문에 무엇보다도 꾸준함이 중요하다고 생각합니다. 부디 프로그래밍의 재미를 잃지 않으시고 꾸준하게 원하시는 지식을 학습하시길 바라겠습니다. 부족한 제 의견을 읽어주셔서 감사드리고 부디 작게나마 도움이 되셨으면 좋겠습니다.

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2022년 12월 2일 오전 2:25

 • 

저장 16조회 3,034

댓글 0