BEFORE — JAVASCRIPT
実行するまで気づきにくい
// user はどういう形? 書いてみないと分からない
function greet(user) {
return "Hello, " + user.nmae;
}
greet({ name: "Aya" });
// → 実行してから "Hello, undefined" で初めて気づく
動かしてみないと、タイプミスや渡し忘れが見えない。テストか目視に頼るしかなく、人数が増えるほど漏れる。
AFTER — TYPESCRIPT
実行前に赤線と警告が出る
// user の形を書いておく
type User = { name: string };
function greet(user: User) {
return "Hello, " + user.nmae;
}
// ^^ 'nmae' は User にありません
エディタで事前に赤線が出る。AI に修正を頼むときも「この形を壊さないで」と伝えやすくなる。
型 = データの形の、かんたんな約束。同じ処理に、約束を一枚足すだけ。
実務での意味
型は「このデータはこういう形です」という契約書のように働く。人間が読むときも、AI に直してもらうときも、情報の足場になる。チームが大きくなるほど効いてくる。
非エンジニア視点のつまずき
「JS とは別物?」に見えるが、TS は JS の上に型チェックを足したもの。「エラーが増えた」ように見えるが、実行するまで見えなかった問題が、早めに見えるようになっただけ。
TS は「難しい記号が増えた JS」に見えやすい。
でも現場では、むしろ人と AI がコードを安全に直すための目印になる。