Skip to content

2주차 실전! 코틀린과 스프링부트로 도서관리 애플리케이션 개발하기 #14

@toychip

Description

@toychip

📌 2주차 실전! 코틀린과 스프링부트로 도서관리 애플리케이션 개발하기

섹션 0 소개와 준비, 수업 자료(PDF, PPT) 섹션

  • 강의 소개 영상
  • 강의 준비 영상

섹션 1 도서관리 애플리케이션 리팩토링 준비하기

  • 1강. 도서관리 애플리케이션 이해하기
  • 2강. 테스트 코드란 무엇인가, 그리고 왜 필요한가?!
  • 3강. 코틀린 코드 작성 준비하기
  • 4강. 사칙연산 계산기에 대해 테스트 코드 작성하기
  • 5강. 사칙연산 계산기의 나눗템 테스트 작성
  • 6강. Junit5 사용법과 테스트 코드 리팩토링
  • 7강. Junit5으로 Spring Boot 테스트하기
  • 8강. 유저 관련 기능 테스트 작성하기
  • 9강. 책 관련 기능 테스트 작성하기
  • 10강. 테스트 작성 끝! 다음으로!

섹션 2 Java 서버를 Kotlin 서버로 리팩토링하자!

  • 11강. Kotlin 리팩토링 계획 세우기
  • 12강. 도메인 계층을 Kotlin으로 변경하기 - Book.java
  • 13강. 도메인 계층을 Kotlin으로 변경하기 - UserLoanHistory.java, User.java
  • 14강. Kotlin과 JPA를 함께 사용할 때 이야기거리 3가지
  • 15강. 리포지토리를 Kotlin으로 변경하기
  • 16강. 서비스 계층을 Kotlin으로 변경하기 - UserService.java
  • 17강. BookService.java를 Kotlin으로 변경하고 Optional 제거하기
  • 18강. DTO를 Kotlin으로 변경하기
  • 19강. Controller 계층을 Kotlin으로 변경하기
  • 20강. 리팩토링 끝! 다음으로!

섹션 3 첫 번째 요구사항 추가하기 - 책의 분야

  • 21강. 책의 분야 추가하기
  • 22강. Enum Class를 활용해 책의 분야 리팩토링 하기
  • 23강. Boolean에도 Enum 활용하기 - 책 반납 로직 수정
  • 24강. 첫 번째 요구사항 클리어!

섹션 4 두 번째 요구사항 추가하기 - 도서 대출 현황

  • 25강. 유저 대출 현황 보여주기 - 프로덕션 코드 개발
  • 26강. 유저 대출 현황 보여주기 - 테스트 코드 개발
  • 27강. N+1 문제와 N+1 문제가 발생하는 이유
  • 28강. SQL join에 대해 알아보자
  • 29강. N+1 문제를 해결하는 방법! fetch join
  • 30강. 조금 더 깔끔한 코드로 변경하기
  • 31강. 두 번째 요구사항 클리어!

섹션 5 세 번째 요구사항 추가하기 - 책 통계

  • 32강. 책 통계 보여주기 - 프로덕션 코드 개발
  • 33강. 책 통계 보여주기 - 테스트 코드 개발과 리팩토링
  • 34강. 다양한 SQL을 알아보자!
  • 35강. 애플리케이션 대신 DB로 기능 구현하기
  • 36강. 세 번째 요구사항 클리어!

섹션 6 네 번째 요구사항 추가하기 - Querydsl

  • 37강. Querydsl 도입하기
  • 38강. Querydsl 사용하기 - 첫 번째 방법
  • 39강. Querydsl 사용하기 - 두 번째 방법
  • 40강. UserLoanHistoryRepository를 Querydsl으로 리팩토링 하기
  • 41강. 마지막 요구사항 클리어!

섹션 7 마지막 섹션

  • 강의 마무리
  • 추가 - 테스트와 영속성 컨텍스트
  • 추가 - 코프링과 플러그인

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions