더 자바, 코드를 조작하는 다양한 방법

더 자바, 코드를 조작하는 다양한 방법

(25개의 수강평)

822명의 수강생
49,500원
지식공유자 · 백기선
24회 수업· 총 4시간 36분수업
평생 무제한 시청
수료증 발급 강의
수강 난이도 '초급, 중급'

이런 걸 배울 수 있어요

  • JVM 구조를 이해할 수 있습니다.
  • 바이트코드 조작은 무엇인지 어떻게 사용할 수 있는지 학습합니다.
  • 리플렉션이 무엇인지 어떻게 사용할 수 있는지 학습합니다.
  • 프록시가 무엇이며 어떻게 사용할 수 있는지 학습합니다.
  • 애노테이션 프로세서가 무엇인지 어떻게 사용할 수 있는지 학습합니다.


이번 강좌는 자바 개발자라면 한 번쯤은 사용해보거나 들어봤을 스프링, 스프링 데이터 JPA, 하이버네이트, 롬복 등의 기반이 되는 자바 기술에 대해 학습합니다.


스프링은 어떻게 @Autowired라는 애노테이션을 사용한 필드 또는 매개변수 타입의 객체를 가져와 주입해 주는 것일까? 롬복은 어떻게 @Data라는 애노테이션을 붙였더니 게터, 세터, hashCode, equals 등의 메소드를 만들어 준 걸까? 궁금하신 적이 있으신가요?

이 강좌는 자바가 제공하는 기술 중에 소스 코드, 바이트 코드 그리고 객체를 조작하는 기술에 대해 학습합니다. 그러려면 우선 JVM의 기본적인 구조와 클래스로더의 동작 방식에 대해 이해하는 것이 좋습니다. 따라서 이번 강좌는 "JVM", "바이트코드 조작", "리플렉션", "다이나믹 프록시 기법" 그리고 "애노테이션 프로세서"에 대해서 학습합니다. 따라서, 자바 기초 학습 이후에 어떤 것을 학습하면 좋을지 고민이었던 분들께 추천합니다.

이번 강좌를 학습하고 나면 여러분은 한층 더 자바에 대해 깊이 있는 지식을 습득할 수 있으며 자바를 둘러싼 여러 기술을 학습할 때에도 더 쉽게 이해할 수 있을 것으로 기대합니다. 또한 이 강좌에서 학습한 기술에서 파생해서 GC, 서비스 프로바이더, 프로파일러 등 보다 다양한 자바 기술에도 관심을 두는 계기가 되길 바랍니다.

감사합니다.

THE JAVA,
코드를 조작하는 다양한 방법

수강 대상

  • 코드 또는 객체를 조작하는 라이브러리 또는 프레임워크를 학습하거나 개발하고 싶은 학생 또는 개발자
  • 자바를 조금 더 깊이 있게 이해하고 사용하고 싶은 학생 또는 개발자
  • 롬복, QueryDSL, 코드 커러비지 툴, 스프링이 제공하는 여러 기능(DI, AOP)이 어떻게 구현이 된건지 학습하고 싶은 학생 또는 개발자

선수 지식

  • 자바의 기본적인 문법에 대한 이해 (클래스, 필드, 메소드, Generic, 컴파일, 접근 지시자 등)

지식공유자 소개

현재 미국 마이크로소프트에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.

유튜브 '백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식을 공유하고 있습니다.

주로 자바와 스프링을 사용해서 웹 애플리케이션을 개발하는 것을 좋아하지만 딱히 기술을 가리지는 않습니다.

교육과정

모두 펼치기 24 강의 4시간 36분
섹션 0. JVM 이해하기
4 강의 45 : 15
강좌 문서
자바, JVM, JDK 그리고 JRE
15 : 34
JVM 구조
16 : 42
클래스 로더
12 : 59
섹션 1. 바이트코드 조작
4 강의 46 : 57
코드 커버리지는 어떻게 측정할까?
08 : 54
모자에서 토끼를 꺼내는 마술
13 : 09
javaagent 실습
13 : 39
바이트코드 조작 정리
11 : 15
섹션 2. 리플렉션
6 강의 64 : 03
스프링 Dependency Injection은 어떻게 동작할까?
03 : 01
리플렉션 API 1부: 클래스 정보 조회
16 : 37
애노테이션과 리플렉션
12 : 32
리플렉션 API 2부: 클래스 정보 수정 또는 실행
12 : 06
나만의 DI 프레임워크 만들기
15 : 08
리플렉션 정리
04 : 39
섹션 3. 다이나믹 프록시
5 강의 53 : 21
스프링 데이터 JPA는 어떻게 동작할까?
07 : 03
프록시 패턴
15 : 25
다이나믹 프록시 실습
09 : 32
클래스의 프록시가 필요하다면?
12 : 22
다이나믹 프록시 정리
08 : 59
섹션 4. 애노테이션 프로세서
5 강의 67 : 06
롬복(ProjectLombok)은 어떻게 동작할까?
13 : 13
애노테이션 프로세서 실습 1부
25 : 16
애노테이션 프로세서 실습 2부
14 : 34
애노테이션 프로세서 정리
07 : 51
마무리
06 : 12

공개 일자

2019년 8월 21일 (마지막 업데이트 일자 : 2019년 8월 21일)

수강 후기

4.9
25개의 수강평
thumbnail_default.png
beom seok Kim 1달 전
무심코 사용하는 자바의 기능들이 내부적으로 어떻게 동작하는지 이해할 수 있었습니다. 감사합니다 :)
thumbnail_default.png
jaenyeong kim 7일 전
자바의 기본 개념과도 같은 내용이라 할 수 있지만 일반적인 자바 기본서에는 없는 내용인지라 많은 도움이 되었습니다.

비슷한 강의들

지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스