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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Breno Ferreira
July 13, 2013
Programming
1
390
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
90
Trabalho Remoto TDC Globo 2020
brenoferreira
1
110
Immutable Da
brenoferreira
0
88
Remote Work
brenoferreira
0
89
Fun with Types
brenoferreira
0
220
Monads na prática - QConSP 2014
brenoferreira
0
120
.NET Além do Mundo Microsoft
brenoferreira
0
83
TDC2013 - Programação assíncrona com Javascript
brenoferreira
1
550
TDD com Javascript
brenoferreira
1
510
Other Decks in Programming
See All in Programming
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
140
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
420
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
120
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
500
JPUG勉強会 OSSデータベースの内部構造を理解しよう
oga5
2
220
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
2.2k
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
7
1.2k
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
410
株式会社 Sun terras カンパニーデック
sunterras
0
1.9k
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
560
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
270
15年目のiOSアプリを1から作り直す技術
teakun
0
570
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.1k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.7k
A Soul's Torment
seathinner
5
2.4k
Test your architecture with Archunit
thirion
1
2.2k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Paper Plane
katiecoart
PRO
0
47k
Practical Orchestrator
shlominoach
191
11k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
Believing is Seeing
oripsolob
1
68
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