📝型システム(Type System)をもつ📝JavaScript.
特徴
特徴的な機能
JavaScriptから強化された機能.
- アロー関数
- 分配束縛
- テンプレートリテラル
Why TypeScript
なぜTypeScriptなのか? いろんな意見を収集.
JavaScriptで書かれたライブラリはTypeScriptでつかえる
JavaScriptエコシステムに乗っかることができる.
TypeScriptは大規模開発に最適な言語
TypeScriptの歴史的採用の経緯では, 大規模開発でのメリットが採用の決めてだった.
- 型による静的チェック
- モジュール性
- 緩やかな学習コスト
負の面をいえば, フロントエンド開発をしようとした時, 現実的な選択肢はJavaScriptとTypeScriptくらいしかなく, JavaScriptへの失望からTypeScriptを採用するケースがある.
ref. なぜTypeScriptを使うべきか | TypeScript入門『サバイバルTypeScript』
クラスを使ってオブジェクト指向開発ができる
銀の弾丸ではないTypeScriptを、何故使うべきなのか - Qiita
強力な型推論
ライブラリを使う側はあまり型注釈を書かない. それは📝型推論があり, いい感じにコンパイラが型を推論してチェックする.
ref. 【TypeScriptの魅力を語る】優秀な型推論が「つよいシステム」を作るのだ|朝日新聞社 メディア研究開発センター
VSCode連携による強力なコード補完/エラーチェック
📝VSCodeはTypeScriptで書かれていて, コード補完機能が秀逸. ドットを押すといろいろ補完候補が表示される.
またバックグラウンドでコンパイルチェックをしてエラー表示してくれる.
<2025-03-13 Thu 08:33>
わたしの記憶ではVSCodeがライジングしてきたとき、TypeScriptとVSCodeの相性がよすぎるとできる武蔵小杉のフリーランスエンジニアがいっていた.
TypeScript文法
アロー関数
アロー関数 vs function
どっちがいいの?
🔧neverthrow
TypeScriptで📝Result型を実現するためのモジュール.
https://github.com/supermacro/neverthrow
TypeScript 型システム
TypeScriptの型についての知識をまとめる.
型定義ファイル
declaration source file. TypeScriptの型を定義するファイル. d.tsのような拡張子.
DefinitelyTyped
TypeScript 用の型定義リポジトリ.
https://github.com/DefinitelyTyped/DefinitelyTyped
TypeScript開発ツール
🔧TypeScriptトランスパイラ(tsc)
TypeScript->JavaScriptの📝トランスコンパイラ.
- tsconfig.json: 設定ファイル.
- —noEmit: 型チェックのみ実行.
ts-node
Lint
文字リテラルのシングルクオートダブルクオート問題
機能的には同じなので好み次第.
- 一般的に統一したスタイルを使うことが推奨.
- JSONはダブルクォート ” 必須なので、JSONデータを扱う場合は ” を使うことが多い.
- JavaScriptのスタイルガイド(例: AirBnBスタイルガイド)ではシングルクォート ’ を推奨していることが多い.