SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Do you know
RxJS? Front-end Developer
Jacob
TABLEOFCONTENTS
FIRST
SECTION
RxJS 등장배경
SECOND
SECTION
Rx란
무엇인가
THIRD
SECTION
주요 개념 및
간단한 라이브 코딩
FOURTH
SECTION
그럼 도입할까?
RxJS 등장 배경
왜 RxJS가 등장했을까?
기존 로직으로는 처리가 어려울까?
01
여러 이벤트를
비동기로
처리하고 싶어요!
응?
이미 방법이 있지 않나?
Callback, Eventemitter, Promise ...
RxJS등장배경
Callback
중첩 구성시 콜백헬 발생
Promise
단일 값만 처리 가능.
불변이기 때문에 취소 불가.
RxJS
복잡한 여러 이벤트 처리를
간결한 코드로 처리 가능.
Rx란 무엇인가?
Observable을 사용하는
반응형 프로그래밍을 위한
라이브러리
02
“Reactive Extensions for JavaScript”
An API for asynchronous
programming with observable
streams
최고의 아이디어 조합.
● Observer pattern
● Iterator pattern
● Functional programming
비동기 또는 콜백 기반의 코드를 더 쉽게 작성할 수 있게 해준다
Rx란무엇인가?
Rx란무엇인가? FRONTEND
Web 또는 Mobile에서 UI
이벤트 및 API 응답 조작
CROSS-PLATFORM
Javascript, Java, Python, C#
등에서도 사용 가능
BACKEND
Rx의 비동기성을 이용하여
동시성과 구현 독립성 지원
주요 개념
주요 개념 및 간단한 라이브 코딩
03
Stream
Observable
Observer
Operator
Live
Coding!
그럼 도입할까?
왜 RxJS가 등장했을까?
기존 로직으로는 처리가 어려울까?
04
그럼도입할까?
이미 많은 사람들이 사용하고 있다!
Microsoft, Netflix, Github, Soundcloud, Trello, Airbnb, Kakao
….
그럼도입할까?
“Think of RxJS as Lodash for events”
그럼도입할까?
Functional
관찰 가능한 스트림에 순수
함수를 사용하여 복잡한
상태 저장을 피할 수 있다
Less is more
몇 줄의 코드로
코드베이스가 깔끔해
질 수 있다
Async error handling
전통적인 try / catch는 비동기 계산의 오류에
무력하지만 Rx는 적절한 오류처리 방법을
가지고 있다
Concurrency made easy
Observable 및 Scheduler를
사용하면 개발자가 더 낮은 수준의
스레딩, 동기화, 동시성 문제를
추상화 할 수 있다
하지만….
러닝 커브가 만만치 않다!
처음 접하는 개발자에게는 난해한 코드
메모리 누수도 신경써야 한다.
처음볼때 난해한 코드와 디자인 패턴만
이해한다면 충분히 멋지고 효율적인 코드를
작성할 수 있다!
메모리 누수 등에는 이미 많은 대안들이
존재하고
방법 또한 많이 있다.
THANKS!
작성자: 정규현(JACOB) | 블로그: https://code-masterjung.tistory.com | Front-end Developer

Weitere ähnliche Inhalte

Ähnlich wie RxJS Preview for Korean

최근 Javascript framework 조사
최근 Javascript framework 조사최근 Javascript framework 조사
최근 Javascript framework 조사Kichul Jung
 
2017년 javascript의 현재주소
2017년 javascript의 현재주소2017년 javascript의 현재주소
2017년 javascript의 현재주소윤학 권
 
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례양재동 코드랩
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...JinKwon Lee
 
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)Sang Don Kim
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Daum DNA
 
Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기KwangSeob Jeong
 
E-Gov 기반 Mobile Web Friendly 개발
E-Gov 기반 Mobile Web Friendly 개발E-Gov 기반 Mobile Web Friendly 개발
E-Gov 기반 Mobile Web Friendly 개발JavaCommunity.Org
 
올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloud올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloudcho hyun jong
 
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020AWSKRUG - AWS한국사용자모임
 
Play node conference
Play node conferencePlay node conference
Play node conferenceJohn Kim
 
RxJS로 비동기와 친해지기
RxJS로 비동기와 친해지기RxJS로 비동기와 친해지기
RxJS로 비동기와 친해지기Seokju Na
 
React, Redux 실전 적용기
React, Redux 실전 적용기React, Redux 실전 적용기
React, Redux 실전 적용기은미 김
 
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)knight1128
 
Unionweb프로젝트
Unionweb프로젝트Unionweb프로젝트
Unionweb프로젝트Dong-Jin Park
 
소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵중선 곽
 
Java 8 & Beyond
Java 8 & BeyondJava 8 & Beyond
Java 8 & BeyondJay Lee
 

Ähnlich wie RxJS Preview for Korean (20)

React vac pattern
React vac patternReact vac pattern
React vac pattern
 
최근 Javascript framework 조사
최근 Javascript framework 조사최근 Javascript framework 조사
최근 Javascript framework 조사
 
2017년 javascript의 현재주소
2017년 javascript의 현재주소2017년 javascript의 현재주소
2017년 javascript의 현재주소
 
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례
2016 W3C Conference #6 : ReactiveX + Meteor 종단간 암호화 구현 사례
 
ecdevday4
ecdevday4ecdevday4
ecdevday4
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
 
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012
 
1.react 101
1.react 1011.react 101
1.react 101
 
Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기Laravel로 스타트업 기술 스택 구성하기
Laravel로 스타트업 기술 스택 구성하기
 
E-Gov 기반 Mobile Web Friendly 개발
E-Gov 기반 Mobile Web Friendly 개발E-Gov 기반 Mobile Web Friendly 개발
E-Gov 기반 Mobile Web Friendly 개발
 
올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloud올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloud
 
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020
Cloud로 나아가는 Frond-end 개발자 - 박찬민(버드뷰) :: AWS Communityday online 2020
 
Play node conference
Play node conferencePlay node conference
Play node conference
 
RxJS로 비동기와 친해지기
RxJS로 비동기와 친해지기RxJS로 비동기와 친해지기
RxJS로 비동기와 친해지기
 
React, Redux 실전 적용기
React, Redux 실전 적용기React, Redux 실전 적용기
React, Redux 실전 적용기
 
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
 
Unionweb프로젝트
Unionweb프로젝트Unionweb프로젝트
Unionweb프로젝트
 
소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵
 
Java 8 & Beyond
Java 8 & BeyondJava 8 & Beyond
Java 8 & Beyond
 

RxJS Preview for Korean