Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
8割完成済みのJavaプロジェクトにKotlinを 途中導入した話 エムスリー株式会社 川俣 涼
Slide 2
Slide 2 text
自己紹介
Slide 3
Slide 3 text
川俣 涼 @ryoKawamata 1989.04.25 生 前職: 消防士 (エンジニア歴9ヶ月) 好きな言語: Ruby, js, Kotlin
Slide 4
Slide 4 text
報告書作成支援 システム Electron Vue
Slide 5
Slide 5 text
鍼灸院専門の webデザイン事業
Slide 6
Slide 6 text
患者管理システム Ruby Rails
Slide 7
Slide 7 text
今日話すことは?
Slide 8
Slide 8 text
Javaプロジェクトに Kotlinを途中導入してどうだったのか? メリットは? 導入の経緯は? 詰まったところは? デメリットは?
Slide 9
Slide 9 text
どんなプロジェクトに導入?
Slide 10
Slide 10 text
m3.com カンファレンス Java8 maven SpringBoot Tymereaf
Slide 11
Slide 11 text
なぜKotlin導入したの?
Slide 12
Slide 12 text
1. 社内でのKotlin導入の流れ 2. 技術的な挑戦をしてみたい
Slide 13
Slide 13 text
導入にあたっての障害は?
Slide 14
Slide 14 text
以前社内でKotlinでリニューアルを担当した @susan2goさんの存在 チームとしての姿勢 特になし
Slide 15
Slide 15 text
どのように進めている?
Slide 16
Slide 16 text
1. 新規追加するクラス・テストはKotlinで実装 2. 機能追加完了後、全クラスのKotlin化を進める
Slide 17
Slide 17 text
Kotlin化のメリットは?
Slide 18
Slide 18 text
1. コード量の減少で開発効率アップ Data Classの利用, raw string, 強力なコレクションの操作(map, filter) 2. 素敵なNull安全 ヌルポの危険を事前に検知。 いかにJavaでnullの危険のある書き方をしていたかがわかる。
Slide 19
Slide 19 text
ex. コレクションの操作(filter, sorted) Java
Slide 20
Slide 20 text
ex. コレクションの操作(filter, sorted) kotlin
Slide 21
Slide 21 text
Kotlin化のデメリットは?
Slide 22
Slide 22 text
特になし
Slide 23
Slide 23 text
1. まだ情報が少ない 2. javaコンパイラ周りの知識は必要
Slide 24
Slide 24 text
1. まだ情報が少ない
Slide 25
Slide 25 text
Java Kotlin Qiitaの記事数 1250 132 Stack Overflowの質問数 21,434 369 Kotlin or Java ✖ spring bootの情報量 2018/11/7 時点
Slide 26
Slide 26 text
2. javaコンパイラ周りの知識は必要
Slide 27
Slide 27 text
lombokを使っている Javaクラスのプロパティを参照できない
Slide 28
Slide 28 text
Delombok or Kotlin 化 or 別モジュール への切り出し
Slide 29
Slide 29 text
JavaからKotlinのクラスを参照すると ビルドエラー
Slide 30
Slide 30 text
maven-compiler-plugin を追加し ビルド順を変更 Kotlin-maven-plugin maven-compiler-plugin Kotlinをコンパイル後に Javaをコンパイル
Slide 31
Slide 31 text
実際導入はどれくらい簡単なの??
Slide 32
Slide 32 text
Demo
Slide 33
Slide 33 text
まとめ
Slide 34
Slide 34 text
サーバーサイドの Kotlin導入は容易に出来る Kotlin使ってハッピーになろう