Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RxJava
Search
Breno Ferreira
July 13, 2013
Programming
1
380
RxJava
Palestra sobre RxJava na trilha de Scala do TDC 2013 em SP
Breno Ferreira
July 13, 2013
Tweet
Share
More Decks by Breno Ferreira
See All by Breno Ferreira
TDC Globo Sistemas Distribuídos
brenoferreira
1
79
Trabalho Remoto TDC Globo 2020
brenoferreira
1
99
Immutable Da
brenoferreira
0
79
Remote Work
brenoferreira
0
83
Fun with Types
brenoferreira
0
220
Monads na prática - QConSP 2014
brenoferreira
0
120
.NET Além do Mundo Microsoft
brenoferreira
0
77
TDC2013 - Programação assíncrona com Javascript
brenoferreira
1
550
TDD com Javascript
brenoferreira
1
500
Other Decks in Programming
See All in Programming
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
4.1k
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
240
Patterns of Patterns
denyspoltorak
0
400
JETLS.jl ─ A New Language Server for Julia
abap34
2
470
ゲームの物理 剛体編
fadis
0
390
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
220
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
120
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
130
SQL Server 2025 LT
odashinsuke
0
110
Cell-Based Architecture
larchanjo
0
150
複雑なUI設計への銀の弾丸 「オブジェクト指向UIデザイン」
teamlab
PRO
2
110
Cap'n Webについて
yusukebe
0
160
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
35
Are puppies a ranking factor?
jonoalderson
0
2.5k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
31
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.2k
Code Reviewing Like a Champion
maltzj
527
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
180
Game over? The fight for quality and originality in the time of robots
wayneb77
1
72
It's Worth the Effort
3n
187
29k
Skip the Path - Find Your Career Trail
mkilby
0
28
The SEO identity crisis: Don't let AI make you average
varn
0
40
Transcript
PROGRAMAÇÃO REATIVA COM RXJAVA Breno Ferreira @breno_ferreira http://www.github.com/brenoferreira
FUNCTIONAL REACTIVE PROGRAMMING
NA MAIOR PARTE DO TEMPO, ESTAMOS REAGINDO AO AMBIENTE
• Dados de geolocalização (GPS) • Push notifications • Eventos
complexos
ITERATOR VS OBSERVER interface IEnumerable<T> { IEnumerator<T> GetEnumerator(); } interface
IEnumerator<T> { bool MoveNext(); //throws Ex T Current { get; } }
ITERATOR VS OBSERVER interface IObservable<T> { IEnumerator<T> GetEnumerator(); } interface
IEnumerator<T> { bool MoveNext(); //throws Ex T Current { get; } }
ITERATOR VS OBSERVER interface IObservable<T> { IEnumerator<T> GetEnumerator(); } interface
IObserver<T> { bool MoveNext(); //throws Ex T Current { get; } }
ITERATOR VS OBSERVER interface IObservable<T> { void Subscribe(IObserver<T> observer); }
interface IObserver<T> { bool MoveNext(); //throws Ex T Current { get; } }
ITERATOR VS OBSERVER interface IObservable<T> { void Subscribe(IObserver<T> observer); }
interface IObserver<T> { void OnNext(T item) T Current { get; } }
ITERATOR VS OBSERVER interface IObservable<T> { void Subscribe(IObserver<T> observer); }
interface IObserver<T> { void OnNext(T item) void OnError(Exception ex) }
ITERATOR VS OBSERVER interface IObservable<T> { void Subscribe(IObserver<T> observer); }
interface IObserver<T> { void OnNext(T item) void OnError(Exception ex) void OnCompleted() }
O VERDADEIRO PODER DO RX • filtros (where, distinct, skip,
take, all, any) • agregações (count, min, max, avg, sum, aggregate) • Transformações (map, flatMap) • Combinações (concat, merge, zip) • Schedulers
RXJAVA Implementação do Rx for .NET em Java Feito pela
Netflix Adaptors para Scala, Groovy, Clojure, JRuby
HTTP://GITHUB.COM/NETFLIX/RXJAVA
LIBRARYDEPENDENCIES ++= SEQ( "COM.NETFLIX.RXJAVA" % "RXJAVA-SCALA" % "0.9.0" )
HTTPS://GITHUB.COM/BRENOFERREIRA/RXJAVATESTS
PERGUNTAS?
OBRIGADO! @breno_ferreira