BEST
개발 · 프로그래밍

/

백엔드

스프링 핵심 원리 - 고급편

스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다.

(5.0) 수강평 628개

수강생 17,993명

Thumbnail

중급자를 위해 준비한
[백엔드, 웹 개발] 강의입니다.

이런 걸
배워요!

  • 핵심 디자인 패턴

  • 스프링 고급 기능

  • 스프링 AOP

핵심 디자인 패턴, 쓰레드 로컬, 스프링 AOP
스프링의 3가지 핵심 고급 개념 이해하기

📢 수강 전 확인해주세요!

  • 본 강의는 자바 스프링 완전 정복 시리즈의 8번째 강의입니다. 우아한형제들 최연소 기술이사 김영한의 스프링 완전 정복 로드맵을 먼저 확인해주세요. (바로가기)

 

스프링 핵심 원리 - 기본편

  • 객체 지향 설계와 스프링
    • SOLID - SRP, OCP, DIP
  • 스프링 컨테이너와 스프링 빈
    • 스프링 컨테이너 - IoC, DI
    • 의존관계 주입
    • 빈 생성주기와 스코프

스프링 핵심 원리 - 고급편 현재 강의

  • 스프링 핵심 디자인 패턴
    • 템플릿 메서드 패턴, 전략 패턴, 템플릿 콜백 패턴, 프록시 패턴, 데코레이터 패턴
  • 쓰레드 로컬
    • 동시성 문제, 멀티쓰레드, 쓰레드 로컬
  • 스프링 AOP
    • 개념, 동작 원리, 실전 예제, 주의 사항

김영한의 스프링 핵심 원리 고급편
핵심 디자인 패턴, 쓰레드 로컬, 스프링 AOP

실무에서 가장 많이 사용하는 기술
스프링 프레임워크

실력 있는 개발자가 되려면 실무에서 자주 사용하는 도구를 깊이 있게 이해해야 합니다.
스프링은 실무에서 가장 많이 사용하는 백엔드 기술입니다.
따라서 백엔드 개발자라면 스프링을 깊이 있게 이해하는 것이 중요합니다.

스프링 핵심 원리
기본에서 고급으로

우리는 앞서 스프링 핵심 원리 - 기본편에서 스프링과 객체 지향 개발의 기본기를 학습했습니다.
스프링을 깊이 있게 이해하고, 실무에서 실력 있는 개발자가 되려면, 기본편에서 학습한 내용을 기반으로 크게 3가지 핵심 고급 개념을 알아야 합니다. 이번 스프링 핵심 원리 - 고급편에서는 이러한 고급 개념을 학습합니다.

1. 스프링 핵심 디자인 패턴
2. 동시성 문제를 다루기 위한 쓰레드 로컬
3. 스프링 AOP


스프링 핵심 원리
고급편

1. 스프링 핵심 디자인 패턴

스프링의 내부 기술들은 몇 가지 핵심 디자인 패턴으로 만들어져 있습니다. 따라서 스프링을 깊이 있게 이해하기 위해서는 먼저 스프링이 자주 사용하는 핵심 디자인 패턴들을 알아야 합니다.

강의에서 전달하는 핵심 디자인 패턴

  • 템플릿 메서드 패턴
  • 전략 패턴
  • 템플릿 콜백 패턴
  • 프록시 패턴
  • 데코레이터 패턴

강의에서는 이러한 디자인 패턴들을 예제 코드로 하나하나 만들어보면서 아주 쉽게 설명해드립니다. 그리고 이렇게 학습한 디자인 패턴을 애플리케이션에 적용하는 방법도 알아봅니다.

2. 쓰레드 로컬

스프링은 주로 웹 애플리케이션 개발에 사용됩니다. 웹 애플리케이션은 동시에 여러 요청을 처리하기 위해 멀티쓰레드를 사용합니다. 따라서 여러 쓰레드가 경합하는 동시성 문제가 발생할 수 있습니다.

강의에서 전달하는 동시성 문제와 쓰레드 로컬 내용

  • 웹 애플리케이션
  • 멀티쓰레드
  • 동시성 문제

강의에서는 스프링을 사용할 때 발생하는 동시성 문제를 알아보고, 또 동시성 문제를 편리하게 해결할 수 있는 쓰레드 로컬 개념까지 학습합니다. 
쓰레드 로컬은 멀티쓰레드 환경에서 스프링이 어떻게 동시성 문제 없이 잘 작동하는지 이해하기 위한 필수 개념입니다.

3. 스프링 AOP

스프링 AOP는 실무에서 정말 많이 사용되는, 마치 마법처럼 느껴질 정도로 편리한 기술입니다. 많은 개발자가 스프링 AOP를 사용하지만, 스프링 AOP가 어떻게 동작하는지 그 원리를 정확하게 이해하고 사용하는 개발자는 많지 않습니다.

단순히 스프링 AOP의 기능만 알고 사용하는 단계를 넘어서, 스프링 AOP의 동작 원리를 깊이 있게 이해해야 장애가 발생했을 때 근본적인 문제 해결이 가능합니다.

강의에서 전달하는 스프링 AOP 내용

  • 개념, 용어정리
  • 프록시 - JDK 동적 프록시, CGLIB
  • 동작 원리
  • 실전 예제
  • 실무 주의사항

강의에서는 스프링 AOP의 단순한 기능 정리를 넘어서 동작 원리부터 실전 예제, 그리고 실무에서 자주 발생하는 주의 사항까지 스프링 AOP의 모든 것을 정리해드립니다.

기타

추가로 스프링 컨테이너의 고급 기술인 빈 후처리기와 스프링 애플리케이션을 개발하는 다양한 실무 팁도 전해드립니다.

  • 스프링 컨테이너의 확장 포인트 - 빈 후처리기
  • 스프링 애플리케이션을 개발하는 다양한 실무 팁

이 강의를
시작하기 전에

고급편인 만큼 이 강의에서 다루는 내용들은 쉬운 내용들이 아닙니다.
하지만 실력 있는 백엔드 개발자가 되려면 반드시 한번은 공부해야 하는 내용입니다.
포기하지 않고 이 강의를 끝까지 따라오시면 여러분은 개발자로서 엄청난 내공 상승을 경험하고 누구보다 자신있게 스프링을 사용하실 수 있게 됩니다.
어려운 내용이니만큼 저도 철저하게 강의를 준비했습니다. 여러분이 이 내용들을 본인 것으로 완성할 수 있게 도와드리겠습니다.


이 강의를
이런 분들께 추천합니다

스프링을 더 깊게
알고 싶은데…

스프링의 고급 개념을
학습함으로써 실력을
더 키우고 싶은 분

스프링 AOP를
사용하기는 하는데…

스프링 AOP의 동작
원리를 정확하게
이해하고 싶은 분

스프링을 코드로
이해하고 싶은데

디자인 패턴을 통해
스프링의 내부 기술을
이해하고 싶은 분

스프링으로 웹 앱을
만들 생각인데

쓰레드 로컬을 통해
스프링 동시성 문제를
이해하고 싶은 분


앞으로 이어질
스프링 완전 정복 시리즈

스프링을 완전히 마스터할 수 있는 시리즈를 준비하고 있습니다. 실제 실무에서 사용하는 핵심 스프링 기능을 중심으로, 실무에서 쓰이지 않거나 오래된 기능은 과감하게 생략한 실무 노하우를 전수해드릴 예정입니다.

강의 순서


이 강의와 관련된
강의 로드맵

김영한의 스프링 완전 정복 시리즈
스프링 핵심 원리~실전 활용이 강의 포함

스프링 부트 + JPA 실무 완전 정복
내공있는 백엔드 최신 실무 기술실전 심화편


이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 스프링을 깊이있게 이해하고 싶은 개발자

  • 스프링을 코드로 쉽게 이해하고 싶은 개발자

  • 개발자 취업 준비생

  • 스프링을 공부했지만 어려워서 포기했던 개발자

  • 실무에서 스프링을 사용하지만 스프링의 핵심 원리를 제대로 이해하고 사용하고 싶은 개발자

선수 지식,
필요할까요?

  • 자바 언어

  • 스프링 핵심 원리 - 기본편

진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.

 

저의 개발 인생 이야기

EO 인터뷰 영상

개발바닥 - 시골 청년 개발왕 되다

취업과 이직에 대한 고민 해결

 

커리큘럼

전체

125개 ∙ (16시간 44분)

수업 자료

가 제공되는 강의입니다.

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

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!