More Related Content
PPTX
PPTX
PPTX
Espresso と Firebase Test Lab で Android アプリのテストを自動化する PPTX
Device Farm を使ったスマホアプリの自動テスト PDF
Firebase Test Lab 無料枠を使ってみました。 PPTX
前任者から引き継いだ Eight Android アプリ内部の改善 PPTX
Kotlin が公式サポートになったので Kotlin の話 PPTX
Android 開発, 運用時に使いたいライブラリやサービスの紹介 What's hot
PDF
kintone Café 東京 Vol.3 ハンズオン資料(kintone & AWS Lambda/S3) PDF
PPTX
PDF
SansanのEightアプリでRealmを導入した件 PPTX
20160312 Jaws Days 2016 API Gateway+Lambda PDF
プログラミング言語のパラダイムシフト(ダイジェスト)ーScalaから見る関数型と並列性時代の幕開けー PDF
PDF
PDF
Similar to Kotlin 使いになりました
PPTX
Java で書かれた Android アプリに Kotlin を適用させていく PPTX
Java で書かれたAndroid アプリに Kotlin を適用させていく PDF
Kotlinではじめる Webアプリケーション入門 PPTX
PDF
Line Creators Studio Android With Kotlin PPTX
PPTX
PPTX
PDF
PDF
PDF
PDF
PDF
【とらのあな主催】オタクがKotlinを追うライトニングトークイベント PPTX
YJTC18 C-1 Kotlin導入の状況と展望 PDF
PDF
PPTX
PPTX
PDF
Potato03 KotlinでAndroidアプリ開発(後編) PDF
More from Kenichi Tatsuhama
PPTX
PPTX
Cloud Firestore を使って、Polling をやめたい話 PDF
Firebase & BigQuery で Android アプリの成⻑を支える PPTX
PDF
知っておきたいFirebase の色んな上限について PDF
【技術的負債LT会】私たちの技術負債最前線〜過去と未来について〜 2024/08/01 PDF
Google Analytics のデータ分析ハンズオン PDF
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O PDF
Firebase Extensions はじめの一歩 PDF
PPTX
PPTX
GDG DevFest Tokyo 2019 Day2 Special Hands-on PDF
PPTX
PPTX
Firebase Summit 2019 Recap PPTX
20171209エンジニアの移住相談会 自己紹介スライド PPTX
DroidKaigi 2018 参加報告会 Closing PPTX
Firebase hands on in Matsuyama PPTX
PPTX
Kotlin 使いになりました
- 1.
- 2.
- 3.
Copyright © 2014Sansan, Inc. All rights reserved.
> 自己紹介
2
• 辰濱健一
• 徳島生まれ、奈良育ち、徳島県在住
• 2回転職するも、いずれも徳島県内勤務
• Tokushima.app 主催
(徳島でのスマホアプリの勉強会)
• Sansan株式会社所属
• 古民家を改修した神山ラボ勤務
• 名刺アプリ Eight Android 版の開発
• Kotlin, RxJava, Realm, … を使ってます
• リモートワーク
• 趣味は楽器演奏
- 4.
- 5.
Copyright © 2014Sansan, Inc. All rights reserved.
> 趣味
4
• 楽器演奏(エレクトーン・トランペット)
• 徳島県内のイベントで、ちらほら演奏する機会を頂い
てます
- 6.
Copyright © 2014Sansan, Inc. All rights reserved.
> Tokushima.app
5
• http://tokushima-app.connpass.com
• 徳島のスマホアプリ開発の勉強会
• 基本もくもく会、たまにハンズオン
• 場所は徳島市内、10:00〜16:00
• 初心者でも OK、入退出自由、参加費無料
• 月1ペースで開催(したいと思ってはいる)
• 辰濱が東京の勉強会で仕入れてきた情報なども共有します
• 要望あれば、近隣に出張ハンズオンなども始めようかな…とか思っている。
- 7.
- 8.
Copyright © 2014Sansan, Inc. All rights reserved.
> Sansan 京都ラボ
7
• 京都で Kotlin 書きたい方、お待ちしております!!
• 京都ラボ:
• http://jp.corp-sansan.com/blog/jinji/2014/141125.html
- 9.
- 10.
- 11.
Copyright © 2014Sansan, Inc. All rights reserved.
> モバイル経験
10
• 前職 2012/09 〜
• iOS, Android, Windows8(C#)
• 機能担当制で、3OS ともやる
• Sansan 2014/03 〜
• 2014/03 〜 法人向け部門
• Android アプリ
• Java, SQLite, DefaultHttpClient(Deprecated...), 生Activity
• 2016/03 〜 個人向け部門(Eight)に部署異動!
• Android アプリ
• Kotlin, Realm, Retrofit, Rx(UI も), MaterialDesign, ...
- 12.
Copyright © 2014Sansan, Inc. All rights reserved. 11
同じ「Android エンジニア」といえど、
使われている技術が違う部署への異動は
かなり大変。。。
- 13.
Copyright © 2014Sansan, Inc. All rights reserved. 12
さらに、
異動後の即戦力の期待値感が高い…orz
(端から見れば、Android → Android。そりゃそうだ。)
- 14.
Copyright © 2014Sansan, Inc. All rights reserved. 13
不慣れと、わからないことの焦りと不安
なかなか終わらないビルド…
- 15.
- 16.
- 17.
Copyright © 2014Sansan, Inc. All rights reserved.
> 社内に Kotlin の師匠
16
• コードレビューによる助言、知見の共有
- 18.
Copyright © 2014Sansan, Inc. All rights reserved.
> 弊社主催の Kotlin 勉強会@東京
17
• 他社事例や自社外の知見の共有!(リモート視聴)
- 19.
- 20.
- 21.
Copyright © 2014Sansan, Inc. All rights reserved. 20
ヶ月
ヶ月
※Input に注力する期間を自分で
定めただけです。
※転職するわけではないです
- 22.
Copyright © 2014Sansan, Inc. All rights reserved. 21
Input に注力する期間
が終わったので…
Output を!
- 23.
- 24.
- 25.
Copyright © 2014Sansan, Inc. All rights reserved.
> Code > Convert Java File to Kotlin File
24
- 26.
Copyright © 2014Sansan, Inc. All rights reserved.
> Before / After
25
↓ Java to Kotlin ↓
- 27.
Copyright © 2014Sansan, Inc. All rights reserved.
> Before / After
26
↓ Java to Kotlin ↓
NewActivity に遷移して、バックキーで戻ると…
- 28.
Copyright © 2014Sansan, Inc. All rights reserved.
> RuntimeException...
27
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null,
request=123, result=0, data=null} to activity
{jp.tokushima.tatsuhama.myapplication/jp.tokushima.tatsuhama.myapplicat
ion.MainActivity}: java.lang.IllegalArgumentException: Parameter specified
as non-null is null: method
kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter data at
android.app.ActivityThread.deliverResults(ActivityThread.java:3699) at
android.app.ActivityThread.handleSendResult(ActivityThread.java:3742) at
android.app.ActivityThread.-wrap16(ActivityThread.java) at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1393)
- 29.
Copyright © 2014Sansan, Inc. All rights reserved.
> Nullable にする必要があった
28
×:data: Intent
↓
○:data: Intent?
※色々試してみたところ、data を関数内で null チェックしてたら、
ちゃんと Intent? になりました!
- 30.
Copyright © 2014Sansan, Inc. All rights reserved. 29
コンバータを使っても、
関数パラメータの
NonNull / Nullableは
ちゃんと確認しよう!
- 31.
- 32.
Copyright © 2014Sansan, Inc. All rights reserved.
> Lint の実行結果
31
• ./gradlew lint で実行
• kt ファイルで使ってるのに、Unused Resources …
リソースを消すときは要注意!
- 33.
Copyright © 2014Sansan, Inc. All rights reserved. 32
Kotlin 1.0.2 で Lint 対応
って書いてたんだけど…
まだ、過信しない方が良い
- 34.
- 35.
Copyright © 2014Sansan, Inc. All rights reserved.
> Android Studio 上に警告が…
34
• Bundle#putBoolean が API 22 以上??
- 36.
Copyright © 2014Sansan, Inc. All rights reserved.
> Android Studio 上に警告が…
35
• Bundle#putBoolean が API 22 以上??
• いいえ、API 1からです。
- 37.
Copyright © 2014Sansan, Inc. All rights reserved. 36
Plugin も発展途上。
怪しいと思ったら、
ちゃんと本家で確認を!
- 38.
- 39.
Copyright © 2014Sansan, Inc. All rights reserved.
> 呼ばれてないことになってしまう
38
• property アクセスが、Hierarchy Callcs で出ない…
• 削除時は要注意!!
使っているのに… 出てない!?
- 40.
Copyright © 2014Sansan, Inc. All rights reserved. 39
色々発展途上。
修正したら、
ちゃんとビルドが通ることを
確認しよう!!
(ビルド遅いけど…)
- 41.
- 42.
Copyright © 2014Sansan, Inc. All rights reserved.
> アノテーションプロセッサが原因?
41
• IcePick:
• Activity/Fragment のインスタンスフィールドを簡単に
保存・復元してくれるライブラリ
- 43.
Copyright © 2014Sansan, Inc. All rights reserved. 42
使ってるライブラリが
Kotlin で動くことを
ちゃんと確認しよう!
Kotlin版 IcePick は弊社の yamamotj が Pikkel を公開しています。
https://github.com/yamamotoj/Pikkel
- 44.
- 45.
Copyright © 2014Sansan, Inc. All rights reserved. 44
まだ発展途上のツールもあるけど、
慣れてくると Kotlin 良い!
※安心して下さい、Kotlin 本体はプロダクトコードでも
問題なく使えています!
- 46.
- 47.
- 48.
Copyright © 2014Sansan, Inc. All rights reserved. 47
四国住まいですが、
また Kotlin の経験積んで
Kansai.kt にて
Output しに来たいと思います!
- 49.
Copyright © 2014Sansan, Inc. All rights reserved. 48
本日はありがとうございました!
&
これからも、
よろしくお願いします!
- 50.