Kotlinは、better Javaを掲げる、汎用クラスベースオブジェクト指向言語です。
JavaやScalaはもちろん、他のプログラミング言語にも影響を受けており、有名なnull安全性を始めとした豊富な言語仕様を持ちます。
いっぽうで、多くの機能をもつがゆえに、Kotlinに入門したばかりでは使い所の難しい仕様がいくつかあります。
特に、Kotlinにおけるクラスは、状態の保持と操作を細かくサポートするため、使い方に迷うこともしばしばです。
本セッションでは、状態管理が重要となるドメインを題材に、初見では旨味のイメージしづらいsealed class/interfaceおよびobjectをとりあげます。
それら機能を通じてクラスの振り回し方、さらにはJavaからどのように見えるかを確認し、より納得して使えることを目指します。