「フラー x ちゅらデータ合同勉強会」で「Kotlinのifを愛でる」という発表をしました
すっかり忘れていましたが、「Kotlinのifを愛でる」という内容で登壇したのでした。2022年3月11日に開催された勉強会でしたので、2ヶ月以上前のことになってしまいました。Time fliesですね。今更ですが告知です。
YouTubeに当日の録画が公開されているようです。自分は見てませんが(恥ずかしいので)、興味があったらご覧いただけますと幸いです。
内容まとめ
自分の登壇内容を以下にまとめます。
- Kotlin公式のCoding conventionsとAndoidのKotlin style guideを読もう。
- 値を返す式としての
if
の使い方。それ以外の使い方については時間が足りないので話さない。 - 推奨されない
if
の書き方がある。推奨しない理由は明確に書かれていないが、壊れやすい書き方だから?
if (someCondition)
someValue
else
otherValue
- 普通に書くならこんな感じ。改行がある場合はブロック
{}
を使おう。
if (someCondition) {
someValue
} else {
otherValue
}
- Kotlinの
if
は値を返す式なので、ブロックの中でreturnを書かずに、if式を直接returnするのがKotlinらしい書き方。
bad:
fun someValue(int: Int) {
if (someCondition) {
return someValue
} else {
return otherValue
}
}
good:
fun someValue(int: Int) {
return if (someCondition) {
someValue
} else {
otherValue
}
}
- 直接if式を返せるように書ける。この書き方は簡潔なので嬉しい。
fun someValue(int: Int) =
if (someCondition) {
someValue
} else {
otherValue
}
- 1行で書ける場合はブロック
{}
を省略しても良い。
fun someValue(int: Int) =
if (someCondition) someValue else otherValue
- if-elseを行頭に持ってくる書き方(Scalaっぽい?)。個人的には好きだけど、チーム開発ではおすすめしにくい。チーム開発ならこの上に書いた2つのパターンが無難だと思う。
fun someValue(int: Int) =
if (someCondition) someValue
else otherValue
自分たちだけの最強の if
を見つけよう!
追記:スライドを公開しました
過去の登壇時の発表資料をMarkdown形式で書き直して公開しました。「Kotlinのifを愛でる」のスライドは、以下に起きました。VSCodeに Marp: Markdown Presentation Ecosystem をインストールするとスライド形式で見れます。
About me 😎

茨城県つくば市在住のソフトウェアエンジニアです。専門領域はAndroidアプリ開発で、特にアーキテクチャに興味があります。某社でAndroidアプリ開発のテックリードをしています。
Jetpack ComposeによるAndroid MVVMアーキテクチャ入門の著者です。
👉 もっと詳しく
Writing 📝
Android MVVMアーキテクチャ入門
Androidアプリ開発の初学者に向けた、MVVM(Model-View-ViewModel)アーキテクチャの入門書を書きました。初学者の方を確実にネクストレベルに引き上げる技術書です。
👉 もっと詳しく