리액티브 프로그래밍이라는 진입 장벽을 넘고 싶으신가요? Kevin의 알기 쉬운 RxJava가 그 벽을 넘을 수 있는 힘을 키워드리겠습니다.
이런 걸
배워요!
리액티브 프로그래밍의 확실한 기본기
선언형 프로그래밍의 이해
RxJava를 사용한 비동기 프로그래밍
Java 함수형 인터페이스와 람다 표현식
마블 다이어그램을 통한 리액티브 연산자 이해하기
퀴즈를 통한 리액티브 연산자 심화 학습
리액티브 프로그래밍, 알기 쉽고 확실하게 배워보세요!
[마블 다이어그램 보는 법 강의 자료 캡쳐]
[Publisher와 Subscriber간의 동작 흐름 강의 자료 캡쳐]
[배압의 개념에 대한 강의 자료 캡쳐]
여러분들의 의지와 끈기를 저에게 보여주세요. 여러분들이 RxJava의 진입장벽 위에 올라설 수 있도록 저도 최선을 다해서 도와드리겠습니다.
Q. 비전공자도 들을 수 있나요?
A. 전공/비전공과는 무관합니다. Java에 대한 기본 지식이 있다면 누구나 수강 가능하다고 생각합니다. 참고로 저도 처음 시작은 비전공자였습니다. ^^
Q. RxJava를 배우면 무엇이 좋은가요?
A. 앞서 소개글에서도 말씀드렸지만 RxJava를 배우면 복잡한 비동기 프로그래밍을 단순화할 수 있으며, 덧붙여서 명령형 프로그래밍 방식이 아닌 선언형 프로그래밍을 통해 프로그래밍에 대한 사고의 전환을 할 수 있습니다. 더 나은 개발자로 성장하는것은 덤이겠죠?^^ RxJava를 학습하고 나면 리액티브 프로그래밍의 기본기를 확실히 다질 수 있기 때문에 RxJs, RxAndroid, Spring Reactor 등을 학습하기가 훨씬 수월해집니다.
Q. 강의는 어떤 방식으로 진행이 되나요?
A. 대부분의 수업이 강의 자료를 통한 개념 이해 → 예제 코드를 통해 개념을 눈으로 직접 확인하는 방식으로 진행이 되고, 퀴즈가 필요한 수업에는 수강생들이 직접 퀴즈를 풀어서 해당 수업의 내용을 자신의 것으로 만들 수 있도록 수업이 끝나기 전에 퀴즈를 제시했습니다.
Q. 강의에서 사용된 원본 예제 코드는 어디에서 다운로드받을 수 있나요?
A. 수업에서 설명하는 예제 코드는 모두 github에 올라가있으며 아래 주소에서 다운로드 받으실 수 있습니다.
• 예제 원본 소스 코드: https://github.com/ITVillage-Kevin/rxjava
새 프로젝트를 만들어서 예제코드를 직접 타이핑 해보시는 분들은 github 예제 코드에서 common 패키지와 utils 패키지를 꼭 복사/붙여넣기 하신 후, 코드를 작성 하시길 부탁 드리겠습니다.
Q. 강의 자료는 어디에서 다운로드받을 수 있나요?
A. 각 섹션의 수업마다 수업에 사용한 강의 자료를 첨부 파일로 등록해 두었으니 필요하신 분은 다운로드 받아서 참고하시면 되겠습니다.
Q. 강의 자료 이외에 추천해주실 만한 참고 자료가 있을까요?
A. 리액티브 프로그래밍을 학습하는 데 있어 도움이 될만한 사이트는 아래에서 확인하시면 되겠습니다.
• http://reactivex.io/
리액티브 프로그래밍의 공식 사이트로 리액티브 프로그래밍의 기본기를 다지고 난 후에 참고하기 정말 좋은 사이트라고 생각합니다.
• https://github.com/reactive-streams/reactive-streams-jvm
RxJava는 Reactive Streams를 구현한 구현체라고 할 수 있는데요. 이 Reactive Streams의 스펙을 정의해 둔 github 공식 자료입니다.
• https://gist.github.com/casamia918/93b8db69beb9ee06b92a96b2a234d48e
리액티브 프로그래밍에 대해서 한국어로 잘 번역된 github 자료인데요. 한국어로 번역해주셔서 너무 감사하다는 말씀 전하고 싶네요.
• https://rxmarbles.com/
리액티브 프로그래밍의 핵심중에 핵심이라고 할 수 있는 연산자(Operator)들을 마블 다이어그램으로 잘 정리해 놓은 자료입니다.
• http://reactivex.io/RxJava/2.x/javadoc/
마지막으로 RxJava의 공식 javadoc 문서입니다. 2020년 현재 RxJava 3.0이 릴리즈되었기는 하나 3.0에서는 새로운 연산자 함수들이 많이 추가되었다고 단순하게 생각하시고 2.x 버전으로 개념을 확실히 잡은 다음에 3.0으로 넘어가는 게 좋을 것이라고 생각됩니다.
학습 대상은
누구일까요?
Java의 비동기 프로그래밍을 쉽게 구현하고 싶은 분들
선언형 프로그래밍 방식을 쉽게 이해하고 싶은 분들
리액티브 프로그래밍이라는 진입 장벽을 넘어보고 싶은 분들
Spring Boot에서 Reactor, WebFlux를 더 잘 활용하기 위해 리액티브 프로그래밍의 기본기를 확실히 다지고 싶은 분들
[Kevin의 알기 쉬운 Java 개발자 로드맵 이야기] 강의를 기억해주시는 분들
선수 지식,
필요할까요?
Java
동기 프로그래밍과 비동기 프로그래밍의 차이
- 주력 언어 또는 기술 : Java, Spring Framework, RxJava, Reactor, Spring WebFlux
- (주)코드스테이츠(https://www.codestates.com)에서 Senior Educational Software Engineer(Backend)로 활동
(From 2022.03 To 2024.01.31)
- 프리랜서 개발자 및 강사로 활동(From 2024.02)
- 저서
안녕하세요? Kevin이라고 합니다. ^^
인프런에서 이렇게 강사로서 여러분들을 만나게 되어서 너무 반갑습니다.
어떤 분야든 마찬가지겠지만 특히나 소프트웨어 개발자는 끊임없이 변화하는 트렌드에 뒤처지지 않도록 항상 자기 자신을 갈고 닦는것이 개발자로써 살아남는 유일한 방법이라고 생각하며 항상 배우는 자세로 즐겁게 소프트웨어 개발을 하고 있는 개발자 중 한 명입니다.
제가 가지고 있는 지식과 경험이 다른 분들에게 조금이나마 도움이 되기를 바라면서 인프런에서 강좌를 시작하였습니다.
앞으로 수강생분들에게 현실적으로 도움이 되는 다양한 강좌로 꾸준히 찾아뵙도록 하겠습니다. 감사합니다.
질문이나 의견은 언제든지 환영하니, 이메일(it.village.host@gmail.com)로 편하게 얘기해주세요.
전체
18개 ∙ (7시간 30분)
가 제공되는 강의입니다.