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
Kotlin導入作戦
Search
Fukui Atsuko
November 06, 2017
Technology
4
560
Kotlin導入作戦
Kotlinをプロダクトに導入するにあたって、ビジネスとどうバランスをとるかのお話です
Fukui Atsuko
November 06, 2017
Tweet
Share
More Decks by Fukui Atsuko
See All by Fukui Atsuko
こんな時どう書くの? 逆引きKotlin入門
muumuumuumuu
3
1.5k
KotlinとReduxをAndroidアプリに導入したら
muumuumuumuu
6
4.7k
Sometimes Swift confuses Kotlin engineers.
muumuumuumuu
0
670
How to find problem causes and performance improvement
muumuumuumuu
6
4.3k
Other Decks in Technology
See All in Technology
『君の名は』と聞く君の名は。 / Your name, you who asks for mine.
nttcom
1
140
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
0
430
ルネサンス開発者を育てる 1on1支援AIエージェント
yusukeshimizu
0
130
フィッシュボウルのやり方 / How to do a fishbowl
pauli
2
430
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
120
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.3k
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
160
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
630
さくらのクラウド開発ふりかえり2025
kazeburo
2
1.3k
AIと融ける人間の冒険
pujisi
0
100
[2025-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
230
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
0
680
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
110
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
54
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
81
A Modern Web Designer's Workflow
chriscoyier
698
190k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Scaling GitHub
holman
464
140k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Statistics for Hackers
jakevdp
799
230k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
The agentic SEO stack - context over prompts
schlessera
0
570
Code Review Best Practice
trishagee
74
19k
Transcript
,PUMJOಋೖ࡞ઓʂ ʙϏδωεͱΤϯδχΞͷͤΛཱ྆ͤ͞ΔͨΊʹͬͨ͜ͱʙ #POGJSF"OESPJE 'VLVJ"UTVLP
"CPVUNF • Ҫರࢠ / Fukui Atsuko • @muumuumuumuu • Retty,
Inc. • AndroidΤϯδχΞ • ͦͷલΈࠐΈܥAndroidͷ͓ࣄ
ࠃ/P໊࣮άϧϝαʔϏε ϢʔβʔߘܕͷαʔϏεܗଶ $(. XFCͱΞϓϦͰαʔϏεల։ εϚϗϑΝʔετ γϯάϧυϝΠϯ ݄ؒར༻ऀສ 3FUUZͷαʔϏεհ
օ͞Μ,PUMJO͖Ͱ͔͢ʁ ͢Ͱʹಋೖͯ͠·͔͢ʁ ͦΕʹΑͬͯͲΕ͚ͩࣄۀʹߩݙͰ͖· ͔ͨ͠ʁ
3FUUZͰಋೖ͔Β͏ͦΖͦΖ ,PUMJOͰͲ͏ࣄۀʹߩݙ͖͔ͯͨ͠ ʹ͍͓ͭͯ͠͠·͢ɻ
৽ن։ൃͰͳ͘ɺطଘͷ+BWBϓϩδΣΫτʹ ,PUMJOಋೖΛߟ͍͑ͯΔਓ͚ʹͳΓ·͢
"HFOEB • લఏࣝ: Kotlinʹ͍ͭͯ • ಋೖͯ͠Α͔ͬͨͱ͜Ζ • Ͳ͏ͬͯಋೖ͔ͨ͠
,PUMJO
,PUMJO • 2011ʹJetBrain͔ࣾΒൃද͞Εͨϓϩάϥ ϛϯάݴޠ • Better Java ͳݴޠ • JavaͱڞଘՄೳ
• ؔܕϓϩάϥϛϯάͷελΠϧΛαϙʔτ • ͔Θ͍͍
Α͔ͬͨͱ͜Ζ
͕͜͜خ͍͠ • ʢJavaͱൺֱͯ͠ʣ҆શͳίʔυ͕ॻ͚Δ • Null҆શ • ͨͩ͠100%Ͱͳ͍ • Number
Format Exception͔Βͷଔۀ • Kotlin 1.1 ͔ΒՃ͞Εͨ toIntOrNull() • Immutable variables / collections
͕͜͜خ͍͠ • Readabilityͷ্ • SAMม • Interfaceࠈ -> Lambda
• ֦ுؔ • Collection • Data class
͕͜͜خ͍͠ • Property delegateͷॆ࣮ • Observable͕ศར • ؆୯ʹpub/subύλʔϯ͕ॻ͚Δ
͕͜͜خ͍͠ • ϑΝΠϧ୯ҐͰؾܰʹಋೖͰ͖Δ • JavaͷίʔυͱڞଘՄೳ
͕͜͜خ͍͠ ϏδωεαΠυ ΤϯδχΞαΠυ • ϓϩμΫτͷ্࣭͕͕Δ • ৽͍͜͠ͱ͍ͬͯΔײ ✌ •
ใʹ͖͘ • ॻ͍ͯͯςϯγϣ ϯ্͕͕Δ㽉㽉
Ҏ্ɺ࣮ࡍʹͬͯΈͯಘΒΕͨݟͷҰྫͰ ͨ͠ɻ ݁ՌతʹΑ͔͚ͬͨͲɺ ݁Ռ͕Θ͔Βͳ͍ঢ়ଶͰͲ͏αʔϏεΛ υϥΠϒͭͭ͠ಋೖ͔ͨ͠ ʹ͍͓ͭͯ͠͠·͢
)PXUPಋೖ
Α͍࣭ͨͩ͘͘ ʮ͏શ෦,PUMJOͳΜͰ͔͢ʁʯ
+BWB,PUMJOʹஔ͖͑Δʁ • ϦϑΝΫλϦϯά͍ͯ͠ΔؒɺαʔϏεͷά ϩʔεʁ৽نػೳͷ։ൃʁ • ϏδωεଆΛͲ͏ͬͯઆಘ͠·͔͢ʁ
+BWB,PUMJOʹஔ͖͑Δʁ • ϦϑΝΫλϦϯά͍ͯ͠ΔؒɺαʔϏεͷά ϩʔεʁ৽نػೳͷ։ൃʁ • ϏδωεଆΛͲ͏ͬͯઆಘ͠·͔͢ʁ • ஔ͖͑ɺຊʹඞཁͰ͔͢ʁ • ΤϯδχΞͷΤΰͰͳ͍Ͱ͔͢ʁ
• αʔϏεΛάϩʔε͢ΔΤϯδχΞ ෛ͍ͬͯΔʂ
+BWB,PUMJOʹஔ͖͑Δʁ • ஔ͖͑Δඞཁ͕͋Δ͔Ͳ͏͔έʔεόΠ έʔε • લͷεϥΠυͷ࣭ʹશ෦͑ΒΕͳ͍ͷͰ ͋Εશ෦ஔ͖͑Α͏ͱ͠ͳ͍΄͏͕͍͍ ͱࢥ͍·͢
3FUUZͷ߹
)PXUPಋೖ • Kotlinʹڵຯ͕͋ΓɺϓϩμΫτʹೖΕ͍͍ͯ ͷ͔ʢ࣮ӡ༻ʹ͑͏Δ͔ʣݕূ͍ͨ͠ʂ • ·ͣۀͷ10%ҎͰࢼ͠·ͨ͠ • ࣄۀͷతͳΠϯύΫτͳ͍ͱ͜ΖͰ ࢼݧಋೖ
• ϦεΫ0ͰউखʹͬͯΈ·ͨ͠ • ݁Ռ͍͍ײ͡ʂ
)PXUPಋೖ • ϓϩμΫτʹ෦తʹࢼݧಋೖ • ৽نϞδϡʔϧʹͬͦ͜Γಋೖ • ৽نϞδϡʔϧϑϧKotlin • Կ͔͋ͬͯطଘϞδϡʔϧʹӨڹͳ͍ܗ
ͰϦεΫճආ • Kotlin࠷ߴ͔Αʙʙʙʂʂʂʂ
)PXUPಋೖ • ͍ͭʹϓϩμΫτຊମʹಋೖ • ৽نϑΝΠϧͨ͘͞Μख͢͠Δ෦ KotlinͰߦ͘ํ • Java or
KotlinͲͪΒ͔֤ΤϯδχΞʹҕͶ ΒΕ͍ͯ·͢ • ͡Θ͡ΘKotlinΛ૿ͯ͘͠࡞ઓ
)PXUPಋೖ • ͓ͦΒ͘ࠓޙJavaͷίʔυΓଓ͚·͢ • ϝϯς͠ͳͯ͘ಈ͘ίʔυ͍͍ίʔυʂ • ͦ͜ͷஔ͖͑ΛؤுΔ͘Β͍ͳΒϢʔβ͞ Μʹ৽͍͠ՁΛಧ͚Δ͜ͱʹ࣌ؒΛ͍· ͠ΐ͏
• Android FrameworkJavaͳͷͰJavaͱͷ Interface͔Βಀ͛ΒΕ·ͤΜ
·ͱΊ
·ͱΊ • Kotlinಋೖͯ֓͠ͶͤͰ͢ • ΤϯδχΞॻ͍ͯͯςϯγϣϯ্͕Δʂ • ্࣭͕Γใʹޮ͘ͷͰϏδωεత ʹHappy • طଘͷϓϩδΣΫτͷ߹ɺ͡Θ͡Θಋೖ
͢Δͷ͕ΦεεϝͰ͢
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ