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
60
0
Share
Android開発者がKotlinを触ってみた
Android開発2年目の私がKotlinを触ってみた所感を発表します。
umechanhika
October 06, 2017
More Decks by umechanhika
See All by umechanhika
My Workspace [2020/08版]
umechanhika
0
110
My Workspace [2020/06版]
umechanhika
0
56
Badging for Tabs and Bottom Navigation
umechanhika
0
390
Capture view and Register to gallery
umechanhika
0
63
Shape Design with Material Components
umechanhika
3
270
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
580
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.6k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
120
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
540
Other Decks in Programming
See All in Programming
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
3.7k
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.6k
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
5.2k
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
610
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
370
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
2
330
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
440
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
150
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
2.2k
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
2.7k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.5k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Side Projects
sachag
455
43k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
200
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
How to train your dragon (web standard)
notwaldorf
97
6.7k
Designing for Timeless Needs
cassininazir
1
250
Git: the NoSQL Database
bkeepers
PRO
432
67k
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は導⼊すべきなのか︖
ご清聴ありがとうございました