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開発者がKotlinを触ってみた
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
umechanhika
October 06, 2017
Programming
0
53
Android開発者がKotlinを触ってみた
Android開発2年目の私がKotlinを触ってみた所感を発表します。
umechanhika
October 06, 2017
Tweet
Share
More Decks by umechanhika
See All by umechanhika
My Workspace [2020/08版]
umechanhika
0
99
My Workspace [2020/06版]
umechanhika
0
44
Badging for Tabs and Bottom Navigation
umechanhika
0
360
Capture view and Register to gallery
umechanhika
0
57
Shape Design with Material Components
umechanhika
3
260
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
560
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.6k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
110
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
530
Other Decks in Programming
See All in Programming
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
140
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
210
CSC307 Lecture 08
javiergs
PRO
0
670
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
CSC307 Lecture 03
javiergs
PRO
1
490
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.5k
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.4k
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
240
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
Featured
See All Featured
Everyday Curiosity
cassininazir
0
130
A Modern Web Designer's Workflow
chriscoyier
698
190k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Prompt Engineering for Job Search
mfonobong
0
160
Odyssey Design
rkendrick25
PRO
1
500
Faster Mobile Websites
deanohume
310
31k
Making Projects Easy
brettharned
120
6.6k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
Producing Creativity
orderedlist
PRO
348
40k
Color Theory Basics | Prateek | Gurzu
gurzu
0
200
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
エンジニアに許された特別な時間の終わり
watany
106
230k
Transcript
Android開発者が Kotlinを触ってみた 株式会社ナビタイムジャパン 梅津 光
⾃⼰紹介 • 梅津 光(ウメツ ヒカル) • ナビタイム 新卒2年⽬ • 業務ではバスNAVITIMEの開発(Android,
iOS) • 趣味でもアプリ開発 • Kotlin始めました︕
アジェンダ • Kotlinとは︖ • Kotlinを触ってみた所感 • まとめ
Kotlinとは︖
Kotlinとは︖ • Androidの第⼀級⾔語に採⽤ • Javaと100%の互換性 • NULL安全の機構がありJavaよりも安全
NULL安全 • NULLになるもの、ならないものを明確に分ける仕組み • Javaのアノテーションとは似て⾮なるもの • KotlinではNULL許容型にしかnullを代⼊できない val nonNullText: String
= null // コンパイルエラー val nullableText: String? = null // OK
Kotlinを触ってみた所感
タイムライン表⽰アプリをフルKotlinで作ってみた
メリット
導⼊がめちゃくちゃラク • 雛形が同じなのでJavaが分かれば違和感なく実装可能 • ショートカットキーをポチればJava → Kotlinを⼀発コンバート
学習しやすい • ⽇本語の記事が多い Qiitaの記事数 約6,000件
コードがシンプルに書ける • Kotlinに置き換えることでコード量が削れる • 英⽂法的な記述で読みやすい Dog dog = (Dog) animal;
val dog = animal as Dog
デメリット
デメリット(あえて挙げるなら) • 社内のナレッジ不⾜ • 新規導⼊の場合はレビュアーがいない • 若⼲の学習コスト • NonNull型とNullable型の使い分け •
関数オブジェクトなどJavaでは⾒慣れない⽂法
まとめ
既存のフルスクラッチは早めにやるべき 徐々にKotlinで実装していくのもベター 新規開発ならフルKotlinがベスト Kotlinは導⼊すべきなのか︖
ご清聴ありがとうございました