강의

멘토링

커뮤니티

BEST
개발 · 프로그래밍

/

백엔드

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

Java + Spring Boot로 만들어진 웹 애플리케이션을 Kotlin + Spring Boot로 리팩토링 하고 추가 요구사항을 구현합니다. 이 과정에서 Junit5, SQL, JPA, Querydsl 을 사용할 뿐 아니라, 설계 및 구현 관점에서 다양한 방법의 장단점을 다루게 됩니다.

(5.0) 수강평 152개

수강생 2,265명

난이도 초급

수강기한 무제한

  • 최태현

먼저 경험한 수강생들의 후기

먼저 경험한 수강생들의 후기

5.0

5.0

안전한 오징어

54% 수강 후 작성

너무 좋습니다! 제가 항상 의문을 가졌던 부분(constructor 명시적으로 작성하기)도 말씀해주셔서 너무 시원했어요!ㅋㅋㅋㅋ 좋은 강의 만들어주셔서 감사합니당 <3 !!!!!

5.0

asebn1

96% 수강 후 작성

완강했습니다! 좋은 강의 감사합니다!

5.0

김진호

96% 수강 후 작성

너무 좋습니다!

수강 후 이런걸 얻을 수 있어요

  • Kotlin + Spring Boot + JPA를 함께 사용하는 방법

  • Kotlin을 이용한 테스트 기초(Junit5)와 Querydsl 사용법

  • 요구사항을 구현하는 다양한 방법과 Trade-Off 지점에 대한 이해

떠오르는 대세, 코틀린 백엔드! 👩‍💻 
자바 + 스프링부트 리팩토링으로 배워보세요.

지금, 왜 코틀린(Kotlin)일까요?

쉽고 간결한 
코드 

확연히 좋아진 
Null 안정성 

기존 자바와의 
완벽 호환 

이미 네카라쿠배는 코틀린 도입 중! 
자바를 대체할 매력적인 서버 개발 언어로 코틀린이 떠오르고 있습니다.

이 강의에서는 🔥

Java + Spring Boot로 미리 만들어진 도서 관리 애플리케이션을 Kotlin + Spring Boot로 완전히 리팩토링합니다. 모든 리팩토링이 끝나면 다음 세 가지 비즈니스 요구사항과 한 가지 기술적 요구사항을 코틀린 서버 위에 추가로 구현해 봅니다.

이러한 과정을 통해 설계 및 구현 관점에 필요한 다양한 고민을 해볼 수 있고, 여러 방법의 Trade-Off 및 장단점과 추가적인 기술에 대해 배울 수 있습니다. 앞서나가고 싶은 백엔드 개발자라면 함께 도전해봅시다!

강의에서 도전하는 요구사항 4-Step ✅

첫 번째 추가 요구사항

책 등록 시 분야를 구분, 선택할 수 있도록 합니다.

두 번째 추가 요구사항

유저 대출 현황 및 기록 조회를 보여줍니다.

세 번째 추가 요구사항

현재 대여 중인 책, 등록된 책에 대한 통계를 보여줍니다.

네 번째 추가 요구사항

JPQL을 대체하여 QueryDSL을 적용해 봅니다.


이런 분들께 
추천합니다 👩‍💻

  • Java + Spring Boot + JPA로 매우 간단한 CRUD API를 한 번 정도 만들어보신 분!
  • Kotlin 기초 문법을 알고 계신 분!

서버 개발자가 갖춰야 할 지식과 기술은 정말 다양합니다. 그러나 일반적인 강의에서는 ‘특정 주제’를 집중해서 다루고 있어 어느 부분의 역량을 다루고 있는지, 추가로 습득해야 하는 역량은 무엇인지 파악하기가 어렵습니다. 본 강의에서는 강의를 듣기 위해 필수적인 선수 지식을 제외하고는 모두 강의 내용에 녹일 수 있도록 노력하였습니다.

향후 로드맵에 추가되는 강의에서도 이전 강의의 내용을 중복해서 담지는 않되, 이전 강의에서 다룬 적이 없는 내용은 처음부터 차근차근 설명할 수 있도록 구성할 예정입니다. 
보다 자세한 이야기는 무료로 열려 있는 “강의 소개 영상”을 확인해주세요~! 😊


커리큘럼을 
확인해보세요 📚

Section #1.
Kotlin Spring Junit5 

  • Kotlin을 사용하기 위해 필요한 설정 방법을 알아봅니다.
  • 테스트란 무엇이고, 왜 중요한지 살펴봅니다.
  • Junit5의 기초 사용법을 익히고, Junit5와 Spring Boot를 함께 사용해 테스트를 작성하는 방법을 다룹니다.
  • 도서 관리 애플리케이션 API에 대한 테스트를 작성해 봅니다.

Section #2.
Kotlin Spring JPA (1) 

  • Java Spring Boot를 Kotlin Spring Boot로 리팩토링하며 다양한 리팩토링 방법을 배웁니다.
  • Kotlin + Spring + JPA를 함께 사용하는 방법과 주의할 점을 알아봅니다.
  • Spring Application에서 Kotlin의 언어적 특성을 활용하는 방법을 다룹니다.

Section #3.
Kotlin Spring JPA (2) 

  • Type, Status 등을 서버에서 관리하는 두 가지 방법과 각각의 장단점을 살펴봅니다.
  • Text Fixture의 필요성과 구성 방법을 다룹니다.
  • Kotlin에서 Enum + JPA + Spring Boot를 활용할 수 있는 방법을 알아봅니다.

Section #4.
Kotlin Spring JPA SQL

  • 새로운 기능을 추가할 때 위치에 관한 고민과, 각각의 선택에 따른 장단점을 알아봅니다.
  • 복잡한 기능을 추가할 때 테스트 코드를 작성하는 방법을 배웁니다.
  • SQL의 inner join, left join을 이해하고, N + 1 문제를 해결하기 위해 fetch join을 사용해 봅니다.

Section #5.
Kotlin Spring SQL

  • SQL의 다양한 기능을 이해하고, 간결한 함수형 프로그래밍 기법에 익숙해져 봅니다.
  • 동일한 기능을 애플리케이션과 DB로 구현해 보고, 특징과 장단점에 대해 이해합니다.

Section #6.
Kotlin Spring QueryDSL

  • JPQL과 QueryDSL의 장단점을 알아봅니다.
  • QueryDSL을 Kotlin + Spring Boot와 함께 이해하고, 2가지 방식의 장단점을 이해합니다.
  • QueryDSL의 기본적인 사용법을 익힙니다.
  • QueryDSL을 사용해 기존 Repository를 리팩토링해봅니다.

수강생 여러분을 위해 준비한 
이 강의만의 키 포인트 🔑

Point 1

무한 복습을 위한 강의 자료 

강의 내용을 완벽하게 정리한 142페이지 분량의 핸드북과 468페이지 분량의 PPT를 드립니다.

Point 2

서버 개발에 집중하세요 

서버 개발에만 집중할 수 있도록 도서 관리 애플리케이션을 위한 웹 UI를 제공해드립니다.

Point 3

이해를 돕는 꼼꼼한 설명

강의 내용 이해를 돕기 위해 다양한 시각 자료를 준비했습니다!

Point 4

실전 서버 개발 레벨 업! 

실습형 수업에 걸맞게 함께 코드를 작성합니다. 
리팩토링은 물론 추가 요구사항 구현까지 완성해 나갑니다! 


함께 보면 좋은 강의 📺

평균 별점 5.0! 생생한 수강평을 확인해보세요 🚩

이번 강의에서도 Java + Spring Boot가 Kotlin + Spring Boot에서 어떻게 변경되고, 어떤 의미를 갖는지 꼼꼼하게 담았습니다. 여러분의 성공적인 코틀린 서버 개발 입문을 응원합니다! 💪

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • Kotlin으로 웹 애플리케이션 개발을 해보고 싶으신 분

  • 웹 애플리케이션 개발 과정에서 다양한 선택지와 각각의 장단점을 알아가고 싶으신 분

선수 지식,
필요할까요?

  • Java, Kotlin 기초 문법을 알고 계셔야 합니다!

  • Spring Boot로 아주 간단한 CRUD API를 만들어 보셨어야 합니다!

  • 필수적인 선수지식 외의 내용은 모두 설명드립니다!

안녕하세요
입니다.

10,881

수강생

834

수강평

797

답변

4.9

강의 평점

6

강의

안녕하세요 😊

제가 아는 내용을 이해하기 쉽고, 재미있게 설명드려 여러분들이 성장하실 때 행복함을 느끼는 개발자 최태현입니다.

 

  • (현) 캐치테이블[와드] 소프트웨어 엔지니어

  • (전) 스타트업 소프트웨어 엔지니어 리드

  • (전) 배달의민족[우아한형제들] 소프트웨어 엔지니어

  • (교육활동) Next Step 리뷰어 다수 참여, 공기관 & 스타트업 경진대회 강사 및 멘토, 스파르타 코딩클럽 멘토

  • 한국과학기술원 (KAIST) 졸업

 

커리큘럼

전체

48개 ∙ (6시간 22분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

152개

5.0

152개의 수강평

  • 안전한 오징어님의 프로필 이미지
    안전한 오징어

    수강평 7

    평균 평점 5.0

    5

    54% 수강 후 작성

    너무 좋습니다! 제가 항상 의문을 가졌던 부분(constructor 명시적으로 작성하기)도 말씀해주셔서 너무 시원했어요!ㅋㅋㅋㅋ 좋은 강의 만들어주셔서 감사합니당 <3 !!!!!

    • 최태현
      지식공유자

      안녕하세요~!!! 겸손한 요한님 ㅎㅎㅎㅎ 아이고~ 좋은 후기 감사드립니다 ㅎㅎㅎ 앞으로도 좋은 컨텐츠 열심히 만들어볼게요!! 오늘도 좋은 하루 되세요!!! 🙏

  • asebn1님의 프로필 이미지
    asebn1

    수강평 2

    평균 평점 5.0

    5

    96% 수강 후 작성

    완강했습니다! 좋은 강의 감사합니다!

    • 최태현
      지식공유자

      안녕하세요! asebn1님!!! 크으~~~ 완강 대단하십니다 ㅎㅎㅎㅎ 축하드려요~!!! 🎉🎉 강의를 모두 완강하신 오늘 소중하고 행복한 하루 되시기 바랍니다! 감사합니다~ 😊

  • 김진호님의 프로필 이미지
    김진호

    수강평 8

    평균 평점 5.0

    5

    96% 수강 후 작성

    너무 좋습니다!

    • 최태현
      지식공유자

      안녕하세요 진호님~!! 아이고~ 센스있는 후기 감사드립니다 ㅋㅋㅋㅋㅋㅋㅋ 너무 좋네요~!!! 행복한 하루 되세요!! ☺️

  • junuuu님의 프로필 이미지
    junuuu

    수강평 3

    평균 평점 5.0

    5

    100% 수강 후 작성

    절반정도 듣고 수강평남깁니다. 곧 입사하게 될 회사에서 코틀린을 다루게 되었고 jojuldu님의 추천으로 우연하게 접하게 되었는데 너무 많이 배워가는 것 같습니다. 아마 개인프로젝트를 진행하면서 테스트코드, Enum, fetch join, QueryDSL을 다뤄보신 분들도 많겠지만 그 속에서도 강사님의 코딩 스타일 등 배울점들이 많으니 추천드립니다. 그리고 코틀린의 확장함수 같은 이론을 이런식으로 적용하는구나를 배울 수 있습니다. 또한 강사님이 답변도 너무 친절하게 달아주십니다. 자바 개발자를 위한 코틀린 입문은 아직 듣지 않았는데 추후에 이 강의도 꼭 들어보고 싶네요. 양질의 강의 감사드립니다~

    • 최태현
      지식공유자

      안녕하세요~ j님!! 아이고~ 좋은 후기 남겨주셔서 너무 감사드립니다!!! ☺️ 저도 j님께서 날카롭고 흥미로운 질문 많이 남겨주셔서 좋았습니다!! 계속해서 좋은 컨텐츠 만들 수 있도록 노력하겠습니다! 감사합니다!!! 🙏

  • Ian님의 프로필 이미지
    Ian

    수강평 10

    평균 평점 5.0

    5

    94% 수강 후 작성

    1/3 정도 강의 듣고 수강평 빨리 남기고싶어서 남깁니다! 이전 java to kotlin 강의를 듣고 스프링 프로젝트를 시작하고 싶은 찰나에 딱! 강의가 올라와서 수강하고 있습니다. 예상한대로 설명도 너무 잘해주시고, 자바 스프링 프로젝트를 코틀린 스프링으로 변경해주는 과정이 더 쉽고 직관적으로 이해되는 것 같습니다. 아쉬운점은 강의가 끝날때 하시던 멘트가 사라진게 아쉬울 뿐입니다 ㅎㅎ 좋은강의 감사합니다.

    • 최태현
      지식공유자

      아이고 안녕하세요~ Heekng Ko님 ㅎㅎㅎㅎ 첫 수강평!!! 너무나도 감사드립니다~~ 😊 매 강의가 끝날 때 하던 멘트는 이번 강의가 1분 내외도 많아 섹션 마지막 강의에서만 하였습니다 ㅎㅎㅎㅎ 나름 트레이드 마크였는데 저도 아쉽더라고요~ 벌써 1/3이나 들으신 Heekng Ko님을 존중하고 존경하며 끝까지 완주하시기 바랍니다!!! 🔥 감사합니다~!!

월 ₩15,400

5개월 할부 시

₩77,000

최태현님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!