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
umechanhika
October 06, 2017
Programming
0
41
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
87
My Workspace [2020/06版]
umechanhika
0
33
Badging for Tabs and Bottom Navigation
umechanhika
0
300
Capture view and Register to gallery
umechanhika
0
42
Shape Design with Material Components
umechanhika
3
220
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
500
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.5k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
110
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
480
Other Decks in Programming
See All in Programming
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
180
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
3.5k
AHC041解説
terryu16
0
520
Package Traits
ikesyo
2
230
Compose でデザインと実装の差異を減らすための取り組み
oidy
1
230
CNCF Project の作者が考えている OSS の運営
utam0k
5
590
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
410
Immutable ActiveRecord
megane42
0
120
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
370
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
190
ファインディの テックブログ爆誕までの軌跡
starfish719
1
700
テストコード書いてみませんか?
onopon
2
370
Featured
See All Featured
Done Done
chrislema
182
16k
Docker and Python
trallard
43
3.2k
Faster Mobile Websites
deanohume
305
30k
The Cult of Friendly URLs
andyhume
78
6.2k
Optimising Largest Contentful Paint
csswizardry
33
3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.3k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
590
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
6
210
What's in a price? How to price your products and services
michaelherold
244
12k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
52k
Mobile First: as difficult as doing things right
swwweet
222
9.1k
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は導⼊すべきなのか︖
ご清聴ありがとうございました