ISBN 9784297127473

プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで

プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで
著者
鈴木 僚太
出版社
技術評論社
刊行
2022-04

概要

TypeScriptの型システムを基礎から高度な表現力まで体系的に習得する

想定読者

JavaScriptの基礎知識があり、TypeScriptを実務レベルで書けるようになりたい開発者

こんな人には向いていない

  • JavaScriptの基本文法を習得していない完全初学者には、型の議論以前に前提知識の壁がある
  • TypeScriptをすでに実務で2年以上使い込んでいるエンジニアには、基本〜中級寄りの内容が大半を占める
  • React/Next.jsなど特定フレームワーク上でのTypeScript活用パターンを求める人には対象外となる

この本で身につくこと

  • 静的型付けがバグを事前に検出する仕組みを理解し、型安全なコード設計の判断軸を持てる
  • リテラル型・ユニオン型・keyof型など、TypeScript特有の型表現を目的から選んで活用できる
  • any型や型アサーションなど型安全を損なう機能の歴史的経緯・リスク・代替手段を理解できる
  • JavaScriptの仕様との対比でTypeScript独自の仕様を整理し、TSらしいコードに移行できる
  • 章末の力試し問題で理解度を自己検証しながら段階的に習熟度を積み上げられる

ハイライト(外部からの言及)

TypeScriptの型システムは他に類を見ない高い表現力を持っています。プログラムの安全性を高める基本的な型の扱い方から、リテラル型・ユニオン型・keyof 型の扱い方まで幅広く取り上げます。 — 出典

本書が単なる入門書に留まらず、TypeScriptの型表現力そのものの習得を目標に据えていることが伝わる箇所

わかりにくい機能や型安全を脅かす危険な機能についてもごまかさず、歴史的経緯や目的・用途を踏まえたうえで最善の扱い方を説明します。 — 出典

落とし穴を回避するだけでなく正面から扱う本書の編集姿勢を示す。実務でanyを多用しているコードを抱える読者に刺さる

こちらは入門書として書かれているのでTypeScript初めてでも理解しやすかったですし、内容も充実していてとても勉強になりました。 — 出典

JavaScript実務経験者がTypeScript未経験の状態で本書を選んだ読者の体験談。「初めてでも理解しやすい」と「内容の充実」が両立するという評価は、入門書選びで品質と親しみやすさを同時に気にする読者の判断を後押しする

章立て

第1章 イントロダクション

TS の立ち位置(JS との関係 / 設計思想)を整理する導入章

第2章 基本的な文法・基本的な型

プリミティブ型 / リテラル型 / 配列型。TS の型システムの基礎ピース

第3章 オブジェクトの基本とオブジェクトの型

interface / type alias の使い分け。構造的部分型(structural typing)の理解

第4章 TypeScriptの関数

関数型 / 多重定義 / ジェネリクス。実務で詰まりやすい点が集中する章

第5章 TypeScriptのクラス

アクセス修飾子(public/private/protected)と readonly の使い分けを解説。クラスが必要な場面とオブジェクト型で代替できる場面の判断基準になる章。

第6章 高度な型

Mapped Types / Conditional Types / Template Literal Types。本書のハイライト

第7章 TypeScriptのモジュールシステム

ES modules と CommonJS の相互運用・import type の活用など、実プロジェクトで型エラーが発生しやすいモジュール周りの仕様を整理する章。宣言ファイル(.d.ts)理解の入口にもなる。

第8章 非同期処理

Promise / async-await の TS 観点での扱い。型推論の特徴を学べる章

第9章 TypeScriptのコンパイラオプション

tsconfig.json の主要 strict 系オプションの解説。プロジェクト初期設定の根拠書

関連記事 / 参考情報

学習のヒント

  • JavaScript経験者は第1〜2章を速読して構文確認にとどめ、リテラル型・ユニオン型・keyof型が登場する中〜後半章に学習時間を集中させると効率が高い
  • 各章末の「力試し問題」は読み飛ばさず、実際に手を動かして解くこと。正答よりも「コンパイラエラーを見ながら修正する」過程そのものに型推論の感覚を養う価値がある
  • すでにJavaScriptのコードベースを持っている場合は、本書を読みながら既存コードにTypeScriptを部分適用する練習教材として使うと実践定着率が上がる
  • any型・型アサーション関連の章は「使い方」より「なぜ危険か」を理解することを優先する。コードレビューで危険なパターンを指摘できるようになることが実務上の直接の価値

前提知識

  • JavaScriptの基本文法(変数・関数・クラス・モジュール・async/await)を一通り書いた経験
  • npmを使ったパッケージ管理とビルドツールの基本操作

次に読む本

TypeScript Deep Dive(オンライン版)

本書が型の『使い方』と構文を体系的に扱うのに対し、TypeScript Deep Dive はコンパイラの内部動作・高度な mapped types・デコレータなどを網羅するリファレンスとして機能する。本書修了後に参照することで、型推論の判断をより根拠を持って下せるようになる。

実践TypeScript ─ BFFとNext.jsによる型安全なAPIの作り方(翔泳社)

本書が型システムの理論と構文習得に特化するのに対し、実践TypeScriptはNext.js + BFF 構成での型安全な API 設計という具体的な応用を扱う。本書で身につけた型の知識を実プロジェクトのアーキテクチャ設計に接続する段階で参照すると、理論と実装の往復ができる。

出版社による内容紹介

TypeScriptは、JavaScriptに静的型付けの機能を加えたオープンソースのプログラミング言語です。本書では、根幹となるJavaScriptの仕様・機能とともに、TypeScript独自の仕様・機能を解説します。TypeScriptの基礎知識はこれ一冊だけで学べます。 静的型付き言語は世にいくつもありますが、TypeScriptの型システムは他に類を見ない高い表現力を持っています。本書の読者が、型の有効性を理解しTypeScriptらしいコードを書けるようになるために、本書では、プログラムの安全性を高める基本的な型の扱い方から、TypeScriptの「高い表現力」の源となっているリテラル型・ユニオン型・keyof 型の扱い方まで幅広く取り上げます。また、わかりにくい機能や型安全を脅かす危険な機能についてもごまかさず、歴史的経緯や目的・用途を踏まえたうえで最善の扱い方を説明します。 章ごとに力試し問題を用意しており、理解の度合いを確認しながら学習を進められます。

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。