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
サーバーサイドkotlin導入してみて実際どうだった? / Java to kotlin
Search
ryo
November 29, 2018
1
520
サーバーサイドkotlin導入してみて実際どうだった? / Java to kotlin
#筋肉kt 2018発表スライド
ryo
November 29, 2018
Tweet
Share
More Decks by ryo
See All by ryo
GitHub Actions と Datadog でコードベースの定点観測
kawamataryo
7
1.6k
個人開発駆動学習 / personal development driven learning
kawamataryo
1
100
GitHub Trending Bot, Sky Follower Bridge の紹介
kawamataryo
0
170
[Minecraft × ChatGPT] マイクラで作りたいものを伝えると魔法のように作ってくれるコマンドを作る
kawamataryo
0
1.9k
Resumable な JavaScript フレームワーク Qwik を学ぶ / qwik-resumable
kawamataryo
0
3.1k
JSからTSへ移行した Vue.jsプロダクトの型チェックを 漸進的に強化する/ reinforcing the type
kawamataryo
0
3.1k
Webで動画解析 〜Google Meetの挙手とリアルの挙手を連動させるChrome拡張作った話〜 / sync-raise-hand
kawamataryo
0
120
suppress-ts-errors を使って TypeScriptの型チェックを漸進的に強化する / Introducing-suppress-ts-errors
kawamataryo
2
460
Python の dotted path をコピーするVS Code 拡張を作ってみた / I made a copy python path.
kawamataryo
0
290
Featured
See All Featured
Building Applications with DynamoDB
mza
88
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Atom: Resistance is Futile
akmur
259
25k
Building an army of robots
kneath
300
41k
How GitHub (no longer) Works
holman
304
140k
Rails Girls Zürich Keynote
gr2m
91
13k
Designing Experiences People Love
moore
136
23k
Facilitating Awesome Meetings
lara
42
5.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
Art, The Web, and Tiny UX
lynnandtonic
289
19k
Side Projects
sachag
451
41k
RailsConf 2023
tenderlove
4
540
Transcript
元◦◦◦が サーバーサイドKotlin導入して どうだった?? 〜詰まった所、利点を振り返る〜
自己紹介
@ryoKawamata 川俣 涼 消防士歴 6年 エンジニア歴 9ヶ月
BIG3は? BIG3
未測定 すいません やったことないです。。
BIG3は? どうやって筋トレ?
懸垂 「懸垂は最強の筋トレ」 by 消防学校教官
なぜ消防士がエンジニア?
妻の開業がきっかけで ホームページ制作を勉強
鍼灸院専門のWEB制作事業始める ※消防は副業禁止
治療院の 患者管理データベース作成
救急報告書作成支援 システム開発
プログラミング最高や!!
転職 現在に至る
今日話すことは??
サーバーサイドKotlin使って 実際どうだったのか? メリットは? 導入の経緯は? 詰まったところは? デメリットは?
どんなプロジェクトに導入?
医師向けのQ&A掲示板
SP APP レンダリング API API PC
導入して詰まった所は?
詰まり所① サーバーサイドの情報が少ない
Java x spring boot Kotlin x spring boot Qiitaの記事数 1250
132 Stack Overflowの質問数 21,434 2,369 Google 検索結果数 38,300,000 614,000
詰まり所② JVMのコンパイラ周りの 知識がないとツライ
• Lombokを使っているJavaクラスのプロパティをKotlin で認識できない => Delombok、モジュール分割で回避 • JavaからKotlinクラスを呼ぶとビルドエラー => コンパイル順の調整で回避
詰まり所③ ライブラリ使用の際、若干調整必要
• テストのモック用ライブラリ mockitのany、captureで Nullセーフ関連のエラーが発生 => Utilクラスでラップすることで回避 • FormのBean validationが認識されない。 =>
アノテーションにget追加で回避
導入してよかったところは?
利点① 導入が楽!!
• Maven、Gradleのプラグインを入れるだけ => 導入わずか5分 • Javaとの共存が可能 => 試しにTestのみKotlinで書くとかもOK
利点② コード量が圧倒的に少なくすむ
Java Kotlin ex. Data Class
利点③ 使いやすい標準ライブラリ
ex. コレクションの操作(filter, sorted) Java
ex. コレクションの操作(filter, sorted) kotlin
利点④ NULLセーフが素敵
• Nullの危険がある場合はビルド出来ない => ヌルポが起きない => 自分がいかにNullの危険のあるコードを 書いていたか分かる。
利点⑤ エンジニアとしての市場価値アップ!
急成長している言語(コントリビュータ数)2018.9.30 the State of the Octoverse: top programming languages of
2018 kotlin NO. 1 2.6倍
まとめ
サーバーサイド Kotlinを どんどん使っていこう! 詰まる頃あるけど それを上回るメリットがある。
Kotlinで省力化出来た エネルギーは。。。。
Let’s Training!! 目指せ筋肉エンジニア!!