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

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

(9개의 수강평)

514명의 수강생
39,600원 49,500원
(20% 할인, 10일 남음)
지식공유자 · 백기선
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월 20일 (마지막 업데이트 일자 : 2019년 8월 21일)

수강 후기

5.0
9개의 수강평
Sangmin Kim 2달 전
Spring 의 DI, AOP 나 Lombok 기술들을 사용하면서 항상 신기해 하면서도 어떻게 동작 하는지 정확히 이해를 못했는데 이번 강의를 통해서 많이 이해가 되었습니다. 강의 시간도 길지 않아서 집중하기 좋았던거 같습니다.
김재연 1달 전
라이브러리나 프레임워크에 대해 이해하기 위한 기초 지식을 쌓을 수 있습니다. 가능성이 무궁무진한 기능이기에 더욱 흥미로웠고 새롭고 재밌었습니다.
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강좌들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스