개발자

스프링과 스프링부트 뭘 공부해야할까?

2023년 12월 29일조회 1,974

안녕하세요 곧 소프트웨어학과 3학년이 될 대학생입니다. 저의 꿈은 백엔드 개발자입니다. 자바랑 자료구조 공부를 한바퀴 씩 다 돌리고 스프링 공부를 하려는데 요즘은 스프링 공부를 건너뛰고 스프링부트만 해도 된다고 하더라구요 근데 스프링이 스프링부트 베이스라 둘다 공부해야될거같은데 잘모르겠습니다 1. 스프링 -> 스프링부트 2. 스프링부트만 3. 스프링부트 -> 모르는것만 스프링공부 어떤게 가장 이상적일까요?? 여기에 있는 현직 개발자 분들께 질문드립니다!! ㅜㅜ

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 3

인기 답변

이양일님의 프로필 사진

안녕하세요! 백엔드 개발자로 나아가기 위해 스프링을 통한 웹서버 구현쪽을 탐구하시려는 것으로 이해를 했습니다. 개인적인 생각으로 시간적 여유가 되신다면 Spring 전에 Java Servlet 을 기반으로 간단한 웹서버를 구현해보시면 좋지 않을까 합니다. 어려운 기능을 구현하실 필요 없이 간단하게 요청을 받으면 파라미터에 맞게 DB 에 있는 데이터를 조회해 화면을 그려주는 기능을 구현해보시면 됩니다. 그렇게 구현한 기능을 Spring 으로 다시 만들어보세요. Servlet 에서 Spring 으로 변경하면서 Spring 이 제공해주는 편리한 기능들과 간소화된 작업량을 몸소 체험할 수 있고 동일한 Servlet 구현을 내가 구현한 것과 Spring 이 구현한것에 어떤 차이가 있는지도 코드를 까보며 비교해보는 재미가 있습니다. 이렇게 Spring 에 대한 이해가 어느정도 되셨을 때 Spring Boot 로 다시 동일한 기능을 구현해보시면 또 다른 세상이 펼쳐집니다. 기존에 일일히 설정해야했던 내용들이 간소화되고 이걸 Spring Boot 가 어떻게 가능하게 하는지를 알아보는 재미가 생기실 겁니다. 처음부터 Spring Boot 로 시작하시게 되면 이러한 변화를 체감하지 못하시고 "그냥 이렇게 하니까 되는구나" 정도로 넘어가실 수 있습니다. 그럴 경우 깊이있는 이해를 못하셨기 때문에 트러블슈팅이나 커스텀한 기능 구현을 하기 어려워집니다. 이 과정을 진행하시고 여유가 되신다면 Spring Webflux 를 통해 비동기 프로그래밍에 대한 체험도 해보시면 좋지 않을까 싶습니다. 저의 짧은 생각이 조금이나마 도움이 되시길 바라겠습니다.

박지성님의 프로필 사진

박지성

작성자

대학생 2023년 12월 31일

답변 알람이 안떠서 지금 봤네요.. 이미 부트책사긴 했지만 김영한님 강의를 들어봐야겠습니다 정말 감사합니다 도움 많이 되었습니다 이렇게 이해하기 쉽고 확실하게 도움주신거감사합니다

!helloworld님의 프로필 사진

저는 1번이요 근데 스프링은 솔직히 말하면 초급자가 접근하기 어려워요. 물론 꾸역꾸역 이해할수 있겠죠. 근데 흥미롭진 읺을겁니다. 흥미롭게 공부하려면 단순하고 작고 가벼운 개념부터 시작하시면 좋지 않을까 하는 생각입니다. 자주 작은 성공을 이루는것이 좋더라구요

박지성님의 프로필 사진

박지성

작성자

대학생 2023년 12월 31일

약간 파이썬을 처음배운것과 비슷한것이네요 그래도 저는 처음에 c, java 공부해본사람으로서 한번 도전해보겠습니다 ㅎㅎ 답변감사합니다

오진석🌛님의 프로필 사진

일단 이론적인거 생략하고 스프링부트로 일단 시작 하시고 먼저는 스프링을 가지고 api나 웹사이트를 먼저 만들어 보시는 걸 추천드립니다. 이리저리 만들다보면 궁금한게 많으실텐데 어느정도 익숙해지시면 스프링을 본격적으로 천천히 파셔도 괜찮지 않을까 합니다. 안그러면 정말 스프링 학습하시다 중도 하차 하시기 쉽습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 12월 29일

스프링과 스프링부트의 관계와 장단점을 이해하면 선택이 더 쉬워질 것입니다. 스프링은 엔터프라이즈급 애플리케이션을 구축할 수 있는 강력한 프레임워크이며, 스프링부트는 스프링 기반 애플리케이션을 빠르고 쉽게 개발하게 해주는 도구입니다. 즉, 스프링부트는 스프링의 설정과 세팅을 좀 더 편리하게 해주는 도구인데, 그렇기 때문에 내부적으로 어떻게 작동하는지 이해하기 위해서는 기본적으로 스프링에 대한 지식이 필요합니다. 옵션 1(스프링 -> 스프링부트)를 추천드립니다. 이 접근법을 사용하면, 당신은 애플리케이션이 어떻게 작동하는지나 다양한 설정들에 대해 좋은 이해를 갖출 수 있습니다. 이것은 작업 중 문제가 생겼을 때 문제를 해결하는 데 도움이 됩니다. 옵션 2(스프링부트만)도 나쁘지 않습니다만, 내부적으로 무슨 일이 일어나는지 알지 못해 문제 해결에 어려움을 겪을 수 있습니다. 옵션 3(스프링부트 -> 모르는것만 스프링공부)도 가능은 하지만, 이 경우에도 옵션 2에서의 문제점이 여전히 존재합니다. 결국, 어떤 선택을 하던지 당신의 학습 스타일과 필요성에 따라 결정하면 됩니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!