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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Breno Ferreira
July 13, 2013
Programming
400
1
Share
RxJava
Palestra sobre RxJava na trilha de Scala do TDC 2013 em SP
Breno Ferreira
July 13, 2013
More Decks by Breno Ferreira
See All by Breno Ferreira
TDC Globo Sistemas Distribuídos
brenoferreira
1
95
Trabalho Remoto TDC Globo 2020
brenoferreira
1
110
Immutable Da
brenoferreira
0
94
Remote Work
brenoferreira
0
95
Fun with Types
brenoferreira
0
230
Monads na prática - QConSP 2014
brenoferreira
0
130
.NET Além do Mundo Microsoft
brenoferreira
0
89
TDC2013 - Programação assíncrona com Javascript
brenoferreira
1
560
TDD com Javascript
brenoferreira
1
510
Other Decks in Programming
See All in Programming
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
580
おれのAgentic Coding 2026/03
tsukasagr
1
120
Codex の「自走力」を高める
yorifuji
0
1.3k
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
飯MCP
yusukebe
0
450
Nuxt Server Components
wattanx
0
230
AIと共にエンジニアとPMの “二刀流”を実現する
naruogram
0
110
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
1.2k
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.2k
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
170
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
170
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
260
Into the Great Unknown - MozCon
thekraken
40
2.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The Cult of Friendly URLs
andyhume
79
6.8k
BBQ
matthewcrist
89
10k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.2k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
54k
Building AI with AI
inesmontani
PRO
1
840
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