Thumbnail
BEST 개발 · 프로그래밍 프로그래밍 언어
더 자바, 코드를 조작하는 다양한 방법
(4.9)
243개의 수강평 ∙ 3329명의 수강생

49,500원

지식공유자: 백기선
총 24개 수업 (4시간 36분)
수강기한: 무제한
수료증: 발급
난이도:  입문-초급-중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유
초급자를 위해 준비한
[백엔드, 프로그래밍 언어] 강의입니다.

여러분이 사용하고 있는 많은 자바 라이브러리와 프레임워크가 "어떻게" 이런 기능을 제공할 지 궁금한적 있으신가요? 이번 강좌를 통해 자바가 제공하는 다양한 코드 또는 객체를 조작하는 방법에 대해 학습하고 여러분의 자바 기술을 한 단계 업그레이드 하세요.

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


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


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

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

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

감사합니다.

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

지식공유자가 알려주는
강의 수강 꿀팁!
🎓
이런 분들께
추천드려요!
코드 또는 객체를 조작하는 라이브러리 또는 프레임워크를 학습하거나 개발하고 싶은 학생 또는 개발자
자바를 조금 더 깊이 있게 이해하고 사용하고 싶은 학생 또는 개발자
롬복, QueryDSL, 코드 커러비지 툴, 스프링이 제공하는 여러 기능(DI, AOP)이 어떻게 구현이 된건지 학습하고 싶은 학생 또는 개발자
📚
선수 지식,
필요한가요?
자바의 기본적인 문법에 대한 이해 (클래스, 필드, 메소드, Generic, 컴파일, 접근 지시자 등)

안녕하세요
백기선 입니다.
백기선의 썸네일

네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.

아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.

유튜브:
'백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발

커리큘럼 총 24 개 ˙ 4시간 36분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. JVM 이해하기
강좌 문서
자바, JVM, JDK 그리고 JRE 15:34
JVM 구조 16:42
클래스 로더 12:59
섹션 1. 바이트코드 조작
코드 커버리지는 어떻게 측정할까? 미리보기 08:54
모자에서 토끼를 꺼내는 마술 13:09
javaagent 실습 13:39
바이트코드 조작 정리 11:15
섹션 2. 리플렉션
스프링 Dependency Injection은 어떻게 동작할까? 미리보기 03:01
리플렉션 API 1부: 클래스 정보 조회 16:37
애노테이션과 리플렉션 12:32
리플렉션 API 2부: 클래스 정보 수정 또는 실행 12:06
나만의 DI 프레임워크 만들기 15:08
리플렉션 정리 04:39
섹션 3. 다이나믹 프록시
스프링 데이터 JPA는 어떻게 동작할까? 07:03
프록시 패턴 15:25
다이나믹 프록시 실습 09:32
클래스의 프록시가 필요하다면? 12:22
다이나믹 프록시 정리 08:59
섹션 4. 애노테이션 프로세서
롬복(ProjectLombok)은 어떻게 동작할까? 미리보기 13:13
애노테이션 프로세서 실습 1부 25:16
애노테이션 프로세서 실습 2부 14:34
애노테이션 프로세서 정리 07:51
마무리 06:12
강의 게시일 : 2019년 08월 21일 (마지막 업데이트일 : 2019년 08월 21일)
수강평 총 243개
수강생분들이 직접 작성하신 수강평입니다. 수강평을 작성 시 300잎이 적립됩니다.
4.9
243개의 수강평
5점
4점
3점
2점
1점
VIEW 좋아요 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
손민혜 thumbnail
사실 스프링 DI, AOP, IOC등 개념들이나 JVM의 구조에 대해서 이런저런 블로그 글들을 봐도 명확하게 이해안가는 경우가 너무 많았어요. 해당 기술들의 원리를 이해하지 못하니 당연히 기술을 그냥 외우는 수준에 불과하고 그마저도 시간이 지나면 까먹어서 뭐였더라? 하게 되더라구요. 이직을 준비하는 과정에서 이 강의를 보게 되었고, 제가 무심코 쓰고있던 기술들의 원리를 이해하게 되니 조금 더 속시원히 이해가 되는 느낌이 들었습니다. 같은 강의를 몇번 조금 더 들으면 또 더 깊게 나름대로 생각하고 어떤글을 읽어도 조금 더 깊게 이해가 될 것 같아요. 또 휘발성으로 사라질지 모를 지식들이지만, 그래도 어떤 원리로 된다 안된다를 아는거랑은 다르다고 생각해서, 정말 저한테는 의미있는 강의였습니다.
2022-03-17
지식공유자백기선
제가 이 강의를 만든 의도대로 학습 효과를 얻으신 것 같아서 정말 기쁘네요. 앞으로도 좋은 강의 많이 만들겠습니다. 감사합니다.
2022-03-18
Sangmin Kim thumbnail
Spring 의 DI, AOP 나 Lombok 기술들을 사용하면서 항상 신기해 하면서도 어떻게 동작 하는지 정확히 이해를 못했는데 이번 강의를 통해서 많이 이해가 되었습니다. 강의 시간도 길지 않아서 집중하기 좋았던거 같습니다.
2019-08-28
호눅스 thumbnail
완강하고 남기려고 했는데 1화부터 유용하고 재밌네요. 제 점수는 만점입니다!
2020-12-25
D3F4ULT thumbnail
나같은 찌끄레기가 들을 수 있는 강의가 아니었다. 뭔가 유익할 것 같은 얘기를 막 하는데 못알아 먹겠다. 내년 이맘때쯤에 다시 보러 오겠습니다.
2020-01-09
김지성 thumbnail
자바 개발자에게 필수강좌라고 생각합니다
2020-10-02
지식공유자백기선
저도 그렇다고 생각합니다.
2020-10-02
연관 로드맵
이 강의가 포함된 잘 짜여진 로드맵을 따라 학습해 보세요!
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의를
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스