コンパイル OK なのに意図した通りに動かない!? 新卒バックエンド開発者が学んだKotlinエラーハンドリング落とし穴 by YutaYamamoto

Kotlin Fest 2025
どちらでも
Webバックエンド/サーバサイド 初級者

コンパイル OK なのに意図した通りに動かない!? 新卒バックエンド開発者が学んだKotlinエラーハンドリング落とし穴

_____yyuta YutaYamamoto _____yyuta
1

新卒 1 年目でバックエンド開発に配属された登壇者が、Kotlin の Result/runCatching、そして Arrow Core の zipOrAccumulate で Railway Oriented Programming を実践する過程で遭遇した「コンパイルは通るのに意図通りに動かない」落とし穴を、ミニマムな再現コードでご紹介します。

  • runCatching × init ― 例外が握り潰されてバリデーションエラーが起きない!?
  • トランザクション × Result ― rollbackされずにデータがコミットされとる!
  • zipOrAccumulate ― “全部チェックして全部返す”はずが 1 件しか検証されてないやん!

Kotlin中級者の人には当たり前となっている内容かもしれませんが、ぜひエラーハンドリング時には注意して欲しい内容となっています。