Bengo4.com, Inc.
TypeScript を
より型安全に扱うプラクティス
2025.06.06
辻 佳佑
Slide 2
Slide 2 text
Bengo4.com, Inc.
辻 佳佑 Keisuke Tsuji
フロントエンドエンジニア
弁護士ドットコム株式会社
クラウドサイン
< 趣味 >
服作り・ボイトレ
< X アカウント >
@t0daaay
2
自己紹介
Slide 3
Slide 3 text
Bengo4.com, Inc.
型安全(Type Safety)とは、プログラム内で期待される型の値のみを許可し、
それ以外の型の値が誤って使われることを防ぐ仕組み のことを指す。
3
型安全とは
Slide 4
Slide 4 text
Bengo4.com, Inc.
基本的な
静的解析の設定で
型安全性向上 ⛑
4
Slide 5
Slide 5 text
Bengo4.com, Inc.
5
コンパイラオプション( Type Checking)
● strict (9種類のオプションが有効に)
● noImplicitReturns
● noUncheckedIndexedAccess
● noPropertyAccessFromIndexSignature
● exactOptionalPropertyTypes
...など
Slide 6
Slide 6 text
Bengo4.com, Inc.
6
typescript-eslint
recommendedTypeChecked
その他必要に応じて個別に導入
Slide 7
Slide 7 text
Bengo4.com, Inc.
静的解析だけで安全? 🤔
7
Slide 8
Slide 8 text
Bengo4.com, Inc.
8
フォーム送信データ
フォーム入力
type User = {
name: string,
email: string,
}
Slide 9
Slide 9 text
Bengo4.com, Inc.
9
type User = {
name: undefined,
email: string,
}
name は
string 型
って書いて
あるが?
フォーム送信データ
フォーム入力
type User = {
name: string,
email: string,
}
Slide 10
Slide 10 text
Bengo4.com, Inc.
10
API からの受信データ
API サーバー
type User = {
id: number,
name: string,
email: string,
}
Slide 11
Slide 11 text
Bengo4.com, Inc.
11
API からの受信データ
type User = {
id: number,
name: string,
}
email も取得
するって型に
は書いてある
が?
API サーバー
type User = {
id: number,
name: string,
email: string,
}