TSKaigi

なぜ型にこだわるか ー「意図の明白なインタフェース」を考えるー

20分セッション
10:40 - 11:00 / kickflowトラック

TSは柔軟性の高い型システムを持つ一方で、複雑な型の利用を避ける方は多いと思います。このセッションでは、それでも私が実プロダクトで型にこだわる理由について話します。

例えば (a: string[]) => ... は「文字列配列を受け取る」という表明しかしませんが、(a: NonEmptyArray<string>) => .. にすると「長さ1以上の配列」という、より厳密な表明ができます。かつ、それらが型システムによって保証されます。

引数の型を厳密にすれば、テストの数を減らし、関数内のバリデーションによる分岐を減らし、コードの複雑性を下げることができます

このセッションを通して型の役割、そして「なぜ型を書くのか?」について考えるきっかけにしてもらいたいと思います。

池奥裕太 / yuta-ike

池奥裕太 / yuta-ike

エムスリー株式会社 / ソフトウェアエンジニア

2024年にエムスリー株式会社に新卒入社。新規立ち上げサービスのバックエンド・インフラを担当し、昨年からはチームリーダーを務めています。Software Design で「設計としてのTypeScriptプログラミング」を連載中。 2024年度 未踏採択。好きなエディタはFigmaです。

XGitHub
タイムテーブルへ