はじめに
現在業務でTypeScriptを使うことが多いのですが、改めて新人に向けてJavaScriptとTypeScriptの違いや、TypeScriptを使う理由について、すぐに言語化できなかったので以下の動画を参考にまとめてみました。
新人に向けて言う謳い文句
- TypeScriptはスマホ、JavaScriptはガラケー
- コンパイルがあるおかげでエラーに気づける
- Type=型があるおかげでコーディングする際に色々分かりやすくなる
TypeScriptはなぜ必要か
1. コンパイルの重要性
TypeScriptはJavaScriptと違いコンパイルが必要です。
なぜなら、ブラウザはTypeScriptを直接実行できないからです。GoogleChromeの開発者ツールで直接TypeScriptを記述しても動きません。
Node.jsなども同様で、TypeScriptをJavaScriptに変換して実行するという動きを取っています。
このコンパイルプロセスには未然にバグを防ぐことができるという大きな利点があります。
コンパイル時にエラーが出てくれるので、リリース前にバグを見つけることができます。
反面JavaScriptではコンパイルのプロセスがなく、バグが混入したままリリースされる可能性があります。
2. 型の存在
TypeScriptには型があり、この型はドキュメント的な役割を果たしてくれます。ある種型定義は簡易的な仕様書とも言えるのです。また、ライブラリを使う際にもインプットとアウトプットがはっきりとわかります。
新人の頃は「型があると何がいいの?」と思うことも多かったですが、型を事前に決めておくことでコーディング時点でエラーに気付けるのが個人的には一番大きいかなと感じています。
また、関数やオブジェクトに対してインプットとアウトプットがはっきり分かるところも良い点だと感じています
逆にJavaScriptでは型が緩いため、エラー込みのコードもすんなり書けてしまいます。。。