TypeScript入門

完成と次のステップ

54 レッスンで手に入ったもの

お疲れさまでした。最初のレッスンで見た、止まらないまま間違った答えを出すコードを覚えているでしょうか。あれを型で捕まえるところから始めて、いまは JavaScript のプロジェクトを 1 本まるごと移せるところまで来ました。

通ってきた道は 7 つです。型注釈、基本の型、関数の型、interface、union と型ガード、ジェネリクス、そして移行です。

持ち帰る資産

覚えた文法より、書いたコードのほうが役に立ちます。手元に残っているのは次の 3 つです。

interface Work { id: number; title: string; published: boolean; } interface Profile { name: string; nickname: string | null; workCount: number; } type LoadStatus = "loading" | "success" | "error";

WorkProfile はポートフォリオのデータの形です。LoadStatus は通信の状態です。この 3 つは次のコースでもそのまま使います。捨てずに置いておいてください。

もう 1 つ、文法ではないものも持ち帰っています。型を付けてから中身を直す、という手順です。第1章のつくる回で 1 関数に対してやり、第7章でプロジェクト全体に対してやりました。規模が変わっても順番は変わりません。

このコースで扱わなかったこと

正直に書いておきます。TypeScript には、ここで触れていない機能がまだあります。PartialPick といった型を加工する仕組み、keyoftypeof を型のほうで使う書き方、宣言ファイルの読み書き、tsconfig.json の細かい項目などです。

どれも、必要になったときに調べれば足ります。いま無いと困るものではありません。基礎の型が読めるようになっていれば、公式ドキュメントのページが読めるはずです。

次に進む先

まっすぐ進むなら、React実践です。TypeScript で React を書くコースで、このコースの WorkProfileLoadStatus をそのまま持ち込みます。

最初に出てくるのが、コンポーネントの props に型を付ける話です。やることは第4章と同じで、オブジェクトの形を interface で決めて、受け取る側に付けるだけです。次に状態管理で LoadStatus の union が出てきます。第43レッスンで読んだ Promise<T> は、通信のところで実物として出てきます。

つまりこの章までの内容が、そのまま次の前提になります。

続けるための一手

コースを終えた直後にいちばん効くのは、自分のコードを 1 本移すことです。前のレッスンで選んだファイル以外に、もう 1 本選んでみてください。

型が付いたコードは、半年後の自分が読めます。書いた本人が忘れても、形だけは残っているからです。ここまで手を動かしてきた理由は、結局そこにあります。

それでは、次のコースで会いましょう。

生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア
編集 LuaGate編集部