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
AndroidでJava8
Search
Naoki Morioka
October 01, 2015
Programming
0
280
AndroidでJava8
関西モバイルアプリ研究会 #6で発表
Naoki Morioka
October 01, 2015
Tweet
Share
More Decks by Naoki Morioka
See All by Naoki Morioka
Androidアプリ開発からみた RxJavaの使いどころ
nmorioka
1
3.8k
10年運用している 画像サービスでのJavaの活用と 今後の展望
nmorioka
0
500
モバイルアプリでHTTP/2
nmorioka
1
120
既存AndroidアプリでKotlin導入を考える
nmorioka
0
94
Cardbord SDK
nmorioka
0
87
Other Decks in Programming
See All in Programming
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
480
Vue.js学習の振り返り
hiro_xre
2
130
From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism- An Example
philipschwarz
PRO
0
160
Server Driven Compose With Firebase
skydoves
0
390
Pinia Colada が実現するスマートな非同期処理
naokihaba
2
150
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.1k
Golang と Erlang
taiyow
8
1.9k
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
6
2.1k
C#/.NETのこれまでのふりかえり
tomokusaba
1
150
Nuxt UI Pro、NuxtHub、Nuxt Scripts、Nuxtエコシステムをふんだんに利用して開発するコーポレートサイト@Vue Fes Japan 2024
shingangan
3
880
EventSourcingの理想と現実
wenas
6
2.1k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
23k
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
88
5.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
Docker and Python
trallard
40
3.1k
4 Signs Your Business is Dying
shpigford
180
21k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
41
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
A better future with KSS
kneath
238
17k
Code Reviewing Like a Champion
maltzj
519
39k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Designing for humans not robots
tammielis
249
25k
Transcript
"OESPJEͰ+BWB !O@NPSJPLB ؔϞόΠϧΞϓϦݚڀձ
"CPVUNF w Ԭঘه !O@NPSJPLB w ϑϦϡʔגࣜձࣾͰ৭ʑͳ։ൃͬͯ·͢ αʔό αΠυ+BWB "OESPJE
J04FUD w ҎલʹۀͰϖϯΪϯࣂ͍ͬͯͨ͜ͱ͕͋Γ·͢
'JSTU ,PUMJOߦ͚Δਓ,PUMJOΖ͏ʂ
"OESPJE+BWB w +BWB·ͰରԠ 4%,W w USZXJUISFTPVSDFߏจNJO4EL7FSTJPOҎ߱ Ͱར༻Մೳ
"OESJE+BWB1SPCMFNT w ಗ໊ΫϥεΛΑ͘͏"OESPJE։ൃͰίʔυ͕ w 3Y"OESPJEΛ͍ͬͯΔͱ͞ΒʹݦஶʹՄಡੑ͕ Լ͕Δ w
͚ͩͲ+BWBͳΒ ·ͩΕΔͣ
… final Button button = new Button(this); button.setOnClickListener(new OnClickListener() {
public void onClick(View v) { // ΫϦοΫॲཧ } }); … … final Button button = new Button(this); button.setOnClickListener(view -> { // ΫϦοΫॲཧ }); … +BWB +BWB +BWB$PEF
+BWB/FX'FBUVSFT w ϥϜμࣜ w ΠϯλʔϑΣΠεͷ༷มߋ w ετϦʔϜ"1* w 0QUJPOBMͷಋೖ w
+BWB'9 w ͱ࣌ࠁͷ৽ͨͳ"1* w /BTIPSO+BWB4DSJQUΤϯδϯ w ฒߦॲཧͷػೳڧԽ
݁ߏଟ͍
8IZ+BWBJTOPUTVQQPSUFE w ͦͦ"OESPJEΞϓϦ+BWB7.Ͱಈ͍͍ͯΔΘ ͚Ͱͳ͍ w +BWBͷόΠτίʔυzJOWPLFEZOBNJDz +43 ʹ ͍ͭͯEY͕ରԠ͍ͯ͠ͳ͍ͷͰͳ͍͔ w
+BWB༷શʹຬ͍ͨͯ͠ͳ͍ʁ
Ͳ͏ʹ͔ͳΒΜ͔ʁ
3FUSPMBNCEB IUUQTHJUIVCDPNPSGKBDLBMSFUSPMBNCEB ϥϜμࣜͳͲͷ+BWBͰίϯύΠϧ͞ΕͨόΠτίʔ υΛ+BWB PSʹ࣮ͯߦग़དྷΔΑ͏ʹ͠·͢
.FDIBOJTN +BWB KBWBϑΝΠϧ +BWB DMBTTϑΝΠϧ +BWB DMBTTϑΝΠϧ "OESPJE EFYϑΝΠϧ KBWBD⾣
BTN⾣ SFUSPMBNCEB EY⾣
JOWPLFEZOBNJD ˣ JOWPLFWJSUVBMFUD
'FBUVSFT w -BNCEBFYQSFTTJPOT w .FUIPESFGFSFODFT w %FGBVMUNFUIPET4UBUJDNFUIPETPO JOUFSGBDFT Wd
w 5SZXJUISFTPVSDFTTUBUFNFOUT
*OUSPEVDUJPO buildscript { repositories { jcenter() } dependencies { classpath
'me.tatarka:gradle-retrolambda:3.2.3' } } repositories { jcenter() } apply plugin: 'com.android.application' apply plugin: 'me.tatarka.retrolambda' CVJMEHSBEMF
*NQSFTTJPO w ϓϩμΫτʹΈࠐΜͰͳ͘ಈ࡞͍ͯ͠Δ w গਓνʔϜͰͷར༻͕ਪ͞Εͦ͏ɻར༻ग़དྷͳ ͍+BWB"1*ʹ͍ͭͯࣄલʹڞ༗ͳͲඞਢ w ίʔυϨϏϡʔ͕େḿ͍ͬͯΔؾ͕͢Δ
0UIFS w 0QUJPOBMͷಋೖ⾣3Y+BWB0QUJPOBM 'VODUJPOBM +BWB HVBWB w ετϦʔϜ"1*⾣TUSFBNTVQQPSU 'VODUJPOBM +BWB
(4$PMMFDUJPO w +BWB'9⾣+BWB'91PSUT w ͱ࣌ࠁͷ৽"1*⾣5ISFF5FO +PEB5JNF "OESPJE
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ