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
310
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
570
モバイルアプリでHTTP/2
nmorioka
1
130
既存AndroidアプリでKotlin導入を考える
nmorioka
0
120
Cardbord SDK
nmorioka
0
89
Other Decks in Programming
See All in Programming
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
600
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
Swift Updates - Learn Languages 2025
koher
2
520
Tool Catalog Agent for Bedrock AgentCore Gateway
licux
7
2.6k
楽して成果を出すためのセルフリソース管理
clipnote
0
190
AI Agents: How Do They Work and How to Build Them @ Shift 2025
slobodan
0
110
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
460
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
480
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
780
Reading Rails 1.0 Source Code
okuramasafumi
0
260
Ruby Parser progress report 2025
yui_knk
1
460
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Context Engineering - Making Every Token Count
addyosmani
3
63
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
820
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
A better future with KSS
kneath
239
17k
4 Signs Your Business is Dying
shpigford
184
22k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Designing for humans not robots
tammielis
253
25k
YesSQL, Process and Tooling at Scale
rocio
173
14k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
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
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ