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
520
モバイルアプリでHTTP/2
nmorioka
1
130
既存AndroidアプリでKotlin導入を考える
nmorioka
0
98
Cardbord SDK
nmorioka
0
88
Other Decks in Programming
See All in Programming
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
290
Mermaid x AST x 生成AI = コードとドキュメントの完全同期への道
shibuyamizuho
0
160
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
110
php-conference-japan-2024
tasuku43
0
280
nekko cloudにおけるProxmox VE利用事例
irumaru
3
430
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
130
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
470
testcontainers のススメ
sgash708
1
120
Beyond ORM
77web
5
670
return文におけるstd::moveについて
onihusube
1
1.1k
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
760
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Producing Creativity
orderedlist
PRO
341
39k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Automating Front-end Workflow
addyosmani
1366
200k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Speed Design
sergeychernyshev
25
670
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Code Reviewing Like a Champion
maltzj
520
39k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
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
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ