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
40
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
86
My Workspace [2020/06版]
umechanhika
0
32
Badging for Tabs and Bottom Navigation
umechanhika
0
280
Capture view and Register to gallery
umechanhika
0
42
Shape Design with Material Components
umechanhika
3
210
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
490
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.4k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
100
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
470
Other Decks in Programming
See All in Programming
Google Play Consoleデベロッパー アカウントの確認 / Verifying your Play Console developer account
kubode
0
320
Going Staff - Keynote edition
pragtob
0
370
急速に利用拡大を続ける飲食店向けサービスで 店内端末同士のローカル通信を追加設定なしで実現した話
whatasoda
0
150
推し活としてのrails new/oshikatsu_ha_iizo
sakahukamaki
1
330
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
1.3k
モジュラモノリス、その前に / Modular monolith, before that
euglena1215
8
750
Vaporモードを大規模サービスに最速導入して学びを共有する
kazukishimamoto
3
3.2k
Golang と Erlang
taiyow
7
1.8k
CSC305 Lecture 09
javiergs
PRO
0
120
Workflow automationによるインシデント原因調査の自動化
showwin
1
110
デバッグの話 / Debugging for Beginners
kaityo256
PRO
8
740
Serverless renderování Webových komponent
rarous
PRO
0
140
Featured
See All Featured
Producing Creativity
orderedlist
PRO
341
39k
Testing 201, or: Great Expectations
jmmastey
38
7k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
Happy Clients
brianwarren
97
6.7k
Navigating Team Friction
lara
183
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Ruby is Unlike a Banana
tanoku
96
11k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
How to train your dragon (web standard)
notwaldorf
88
5.6k
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は導⼊すべきなのか︖
ご清聴ありがとうございました