KotlinにはJavaのように検査例外・非検査例外の区別はしません。
Java以外にも、他の言語にはエラーのハンドリングを強要させるような仕組みがありますが、Kotlinにはありません。
そのため、Kotlinにおける例外のthrowはすべて副作用となります。
このことから、Kotlinにおけるエラーハンドリングは多少工夫する必要があります。
そのための一つのテクニックとして、関数の戻り値にResult型という成功値もしくは失敗値を表現する型を利用する方法があります。
今回は、いくつかのライブラリの比較をしつつ、現場導入の際に考慮した事項と、実際にプロダクトへ導入した効果についてお話します。