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
690
サーバーサイドkotlin導入してみて実際どうだった? / Java to kotlin
#筋肉kt 2018発表スライド
ryo
November 29, 2018
Tweet
Share
More Decks by ryo
See All by ryo
SaaS公式MCPサーバーをリリースして得た学び
kawamataryo
7
1.9k
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
490
ts-morphのパフォーマンス改善Tips
kawamataryo
0
45
webpack to Rspack
kawamataryo
0
53
GitHub Actions と Datadog でコードベースの定点観測
kawamataryo
7
2k
個人開発駆動学習 / personal development driven learning
kawamataryo
1
220
GitHub Trending Bot, Sky Follower Bridge の紹介
kawamataryo
0
420
[Minecraft × ChatGPT] マイクラで作りたいものを伝えると魔法のように作ってくれるコマンドを作る
kawamataryo
0
2.3k
Resumable な JavaScript フレームワーク Qwik を学ぶ / qwik-resumable
kawamataryo
0
3.4k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
It's Worth the Effort
3n
185
28k
A Modern Web Designer's Workflow
chriscoyier
694
190k
Documentation Writing (for coders)
carmenintech
72
4.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Bash Introduction
62gerente
614
210k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
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!! 目指せ筋肉エンジニア!!