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
300
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.9k
10年運用している 画像サービスでのJavaの活用と 今後の展望
nmorioka
0
560
モバイルアプリでHTTP/2
nmorioka
1
130
既存AndroidアプリでKotlin導入を考える
nmorioka
0
110
Cardbord SDK
nmorioka
0
89
Other Decks in Programming
See All in Programming
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
150
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
100
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.4k
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
ReadMoreTextView
fornewid
1
490
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
C++20 射影変換
faithandbrave
0
550
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
140
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
710
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
5つのアンチパターンから学ぶLT設計
narihara
1
120
ふつうの技術スタックでアート作品を作ってみる
akira888
0
200
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
The World Runs on Bad Software
bkeepers
PRO
69
11k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Balancing Empowerment & Direction
lara
1
380
Building an army of robots
kneath
306
45k
Producing Creativity
orderedlist
PRO
346
40k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Agile that works and the tools we love
rasmusluckow
329
21k
Why Our Code Smells
bkeepers
PRO
337
57k
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
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ