- 発売日:20241109
- 出版社:技術評論社
- ISBN/JAN:9784297145774
読み込み中…
JavaScriptプログラマーのためのTypeScript厳選ガイド 〜JavaScriptプロジェクトを型安全で堅牢にする書き方を理解する
JavaScriptプログラマーのためのTypeScript厳選ガイド 〜JavaScriptプロジェクトを型安全で堅牢にする書き方を理解する
藤 吾郎(著)
通常価格
2,640 円(税込)
通常価格
セール価格
2,400 円
単価
/
あたり
商品説明
本書は、TypeScriptの入門書です。TypeScriptは、JavaScriptに静的型を追加したプログラミング言語です。TypeScriptの構文はJavaScriptの構文のほとんどをそのまま利用しており、ほとんどそのままJavaScriptに変換して実行するため、JavaScriptと同等のことができます。そして、静的型付けは、正しく動作し、しかも読みやすいプログラムを書くための助けになります。
現在、私たちは「TypeScriptこそがモダンJavaScript」という新たな時代に立ち会っています。Webの発展とともにさまざまなWeb技術がJavaScriptの上に構築されていき、JavaScriptの適用範囲も広がりつつあります。その中でTypeScriptは、JavaScriptの代替言語として、その存在感を示しています。
本書では、TypeScriptを「すべてのJavaScriptプロジェクトにとって導入する価値のある、JavaScriptの一方言」と位置付けています。この「方言」とは、ここでは「JavaScriptの知識を100%活かせるが、表面的にはJavaScriptとは少しだけ異なる言語」という意味です。TypeScriptとJavaScriptの適用範囲はほとんど一致するからです。JavaScriptプロジェクトの実装言語としてTypeScriptを採用することで、生産性が向上し、より安定したソフトウェア開発を行えるでしょう。
第1章では、TypeScriptについて概念的な話をしています。第2章では、TypeScriptコンパイラの基本的な使い方を紹介しています。第3章はES2015+について、主にTypeScript的な文脈から解説をしています。続く第4章、第5章ではTypeScriptの型システムについて基礎から応用まで解説し、第6章ではモジュールについて簡潔に触れます。
本書はすでにある程度JavaScriptに習熟したプログラマーを対象にしています。また、bashなどの基本的なコマンドラインインターフェイスや、gitとGitHubについても最低限の知識はあるものとします。最初から通読することを念頭に置いて章を立てていますが、TypeScriptの知識が少しある場合や、JavaScriptについて熟知している場合は、第4章と第5章を集中的に読むのでもよいでしょう。
現在、私たちは「TypeScriptこそがモダンJavaScript」という新たな時代に立ち会っています。Webの発展とともにさまざまなWeb技術がJavaScriptの上に構築されていき、JavaScriptの適用範囲も広がりつつあります。その中でTypeScriptは、JavaScriptの代替言語として、その存在感を示しています。
本書では、TypeScriptを「すべてのJavaScriptプロジェクトにとって導入する価値のある、JavaScriptの一方言」と位置付けています。この「方言」とは、ここでは「JavaScriptの知識を100%活かせるが、表面的にはJavaScriptとは少しだけ異なる言語」という意味です。TypeScriptとJavaScriptの適用範囲はほとんど一致するからです。JavaScriptプロジェクトの実装言語としてTypeScriptを採用することで、生産性が向上し、より安定したソフトウェア開発を行えるでしょう。
第1章では、TypeScriptについて概念的な話をしています。第2章では、TypeScriptコンパイラの基本的な使い方を紹介しています。第3章はES2015+について、主にTypeScript的な文脈から解説をしています。続く第4章、第5章ではTypeScriptの型システムについて基礎から応用まで解説し、第6章ではモジュールについて簡潔に触れます。
本書はすでにある程度JavaScriptに習熟したプログラマーを対象にしています。また、bashなどの基本的なコマンドラインインターフェイスや、gitとGitHubについても最低限の知識はあるものとします。最初から通読することを念頭に置いて章を立てていますが、TypeScriptの知識が少しある場合や、JavaScriptについて熟知している場合は、第4章と第5章を集中的に読むのでもよいでしょう。
店舗在庫状況
目次
第1章 TypeScriptとは何か
1-1 なぜTypeScriptが注目されているのか
1-2 TypeScriptが開発された背景
1-3 TypeScriptで生産性が上がる理由
1-4 TypeScript+JavaScriptという二重構造
1-5 TypeScriptのエコシステム
第2章 TypeScriptコンパイラの基礎
2-1 nodeコマンドをインストールする
COLUMN Node.jsとブラウザ以外のJavaScriptランタイム
Windows
macOS - Homebrew
2-2 tscコマンドをインストールする
プロジェクトディレクトリを用意する
tscコマンドをプロジェクトにインストールする
tsc --initでtsconfig.jsonを生成する
2-3 tscコマンドでTypeScriptのコードをコンパイルする
2-4 tsimpコマンドでTypeScriptのコードをコンパイルせずに実行する
2-5 tsconfig.jsonについて知っておくべきこと
compilerOptions.target - コンパイル先のESバージョン
compilerOptions.lib - 標準ライブラリの型定義
COLUMN ダウンレベルとポリフィル
2-6 Visual Studio CodeでTypeScript言語サービスを利用する
2-7 Visual Studio Codeからスクリプトを実行できるようにする
COLUMN JSONとJSONCの違い
2-8 本書のサンプルコードについて
第3章 ES2015+の基本構文
3-1 変数宣言
varによる変数宣言の復習
ブロックスコープの変数宣言let
ブロックスコープ宣言const
TypeScriptにおけるdeclare var宣言
3-2 クラス
クラスの継承
第一級オブジェクトとしてのクラス
3-3 文字列
JavaScriptの文字列リテラルの復習
テンプレート文字列
タグ付きテンプレート
TypeScriptにおける文字列リテラル型
3-4 プリミティブ値
多倍長整数 / bigint
シンボル / symbol
3-5 配列とタプル
コンストラクタ代替メソッド
タプル
配列
3-6 オブジェクト
オブジェクトリテラル
オブジェクトリテラル型
プロパティ速記法
3-7 グローバルオブジェクト
3-8 関数とメソッド
アロー演算子による無名関数
ジェネレータ関数
デフォルト引数
可変長引数
3-9 スプレッド構文
関数の引数に対するスプレッド構文
配列リテラルに対するスプレッド構文 [...a]
オブジェクトリテラルに対するスプレッド構文 {...o}
3-10 分割代入
3-11 条件分岐
if文
3-12 for-ofループ文とイテレータ
3-13 async/awaitによる非同期処理
第4章 型演算の基本
4-1 JavaScriptの動的型の概要
4-2 TypeScriptの静的型の概要
構造型 / Structural Typing
公称型 / Nominal Typing
漸近的型付け / Gradual Typing
4-3 any型
4-4 unknown型
4-5 void型
4-6 never型
4-7 オブジェクト型
オブジェクトリテラル的な構文による型定義
interface宣言による型定義
オブジェクト型におけるメソッドの定義
4-8 クラス型
implements句
4-9 型を引数として受け取るジェネリクス
コンストラクタシグネチャ
4-10 共用体型 / Union Types
4-11 交差型 / Intersection Types
4-12 余剰プロパティチェック / Excess Property Checks
4-13 ナローイングと型ガード
4-14 型アサーションのas演算子
COLUMN 暗黙の型アサーション
4-15 as const演算子
4-16 non-nullアサーション演算子
4-17 ユーザー値技の型ガードを実装する述語関数
4-18 ナローイングを起こすためのアサーション関数
4-19 satisfies 演算子
implements句とsatisfies演算子の比較
第5章 高度な型演算
5-1 型関数と型演算子
型関数のためのユーティリティ
条件付き型 / Conditional Types
条件付き型の分配 / Distributive Conditional Types
T[P] - 型のプロパティ参照
infer型演算子
5-2 共用体型と交差型
5-3 テンプレートリテラル型
テンプレート文字列に従って一定の規則を持つ文字列型を作る
テンプレートリテラル型とinfer型演算子で文字列リテラル型の中身を解析する
5-4 組み込み型関数
Record(KeyType, ValueType) - 連想配列として使うオブジェクト型を生成する
ReturnType(Fn) - 関数の戻り値を取り出す
Pick(T, K) - オブジェクト型から一部のプロパティを取り出す
Omit(T, K) - オブジェクト型から一部のプロパティを除外する
Partial(T) - オブジェクト型のプロパティをすべて省略可能にする
5-5 型演算活用事例 - ルーティングパスの文字列型からパラメータを取り出す型関数ParamsOf(S)
第6章 モジュールシステム
6-1 importで拡張子なし
6-2 importで拡張子に.mjs
6-3 importで拡張子に.mts
1-1 なぜTypeScriptが注目されているのか
1-2 TypeScriptが開発された背景
1-3 TypeScriptで生産性が上がる理由
1-4 TypeScript+JavaScriptという二重構造
1-5 TypeScriptのエコシステム
第2章 TypeScriptコンパイラの基礎
2-1 nodeコマンドをインストールする
COLUMN Node.jsとブラウザ以外のJavaScriptランタイム
Windows
macOS - Homebrew
2-2 tscコマンドをインストールする
プロジェクトディレクトリを用意する
tscコマンドをプロジェクトにインストールする
tsc --initでtsconfig.jsonを生成する
2-3 tscコマンドでTypeScriptのコードをコンパイルする
2-4 tsimpコマンドでTypeScriptのコードをコンパイルせずに実行する
2-5 tsconfig.jsonについて知っておくべきこと
compilerOptions.target - コンパイル先のESバージョン
compilerOptions.lib - 標準ライブラリの型定義
COLUMN ダウンレベルとポリフィル
2-6 Visual Studio CodeでTypeScript言語サービスを利用する
2-7 Visual Studio Codeからスクリプトを実行できるようにする
COLUMN JSONとJSONCの違い
2-8 本書のサンプルコードについて
第3章 ES2015+の基本構文
3-1 変数宣言
varによる変数宣言の復習
ブロックスコープの変数宣言let
ブロックスコープ宣言const
TypeScriptにおけるdeclare var宣言
3-2 クラス
クラスの継承
第一級オブジェクトとしてのクラス
3-3 文字列
JavaScriptの文字列リテラルの復習
テンプレート文字列
タグ付きテンプレート
TypeScriptにおける文字列リテラル型
3-4 プリミティブ値
多倍長整数 / bigint
シンボル / symbol
3-5 配列とタプル
コンストラクタ代替メソッド
タプル
配列
3-6 オブジェクト
オブジェクトリテラル
オブジェクトリテラル型
プロパティ速記法
3-7 グローバルオブジェクト
3-8 関数とメソッド
アロー演算子による無名関数
ジェネレータ関数
デフォルト引数
可変長引数
3-9 スプレッド構文
関数の引数に対するスプレッド構文
配列リテラルに対するスプレッド構文 [...a]
オブジェクトリテラルに対するスプレッド構文 {...o}
3-10 分割代入
3-11 条件分岐
if文
3-12 for-ofループ文とイテレータ
3-13 async/awaitによる非同期処理
第4章 型演算の基本
4-1 JavaScriptの動的型の概要
4-2 TypeScriptの静的型の概要
構造型 / Structural Typing
公称型 / Nominal Typing
漸近的型付け / Gradual Typing
4-3 any型
4-4 unknown型
4-5 void型
4-6 never型
4-7 オブジェクト型
オブジェクトリテラル的な構文による型定義
interface宣言による型定義
オブジェクト型におけるメソッドの定義
4-8 クラス型
implements句
4-9 型を引数として受け取るジェネリクス
コンストラクタシグネチャ
4-10 共用体型 / Union Types
4-11 交差型 / Intersection Types
4-12 余剰プロパティチェック / Excess Property Checks
4-13 ナローイングと型ガード
4-14 型アサーションのas演算子
COLUMN 暗黙の型アサーション
4-15 as const演算子
4-16 non-nullアサーション演算子
4-17 ユーザー値技の型ガードを実装する述語関数
4-18 ナローイングを起こすためのアサーション関数
4-19 satisfies 演算子
implements句とsatisfies演算子の比較
第5章 高度な型演算
5-1 型関数と型演算子
型関数のためのユーティリティ
条件付き型 / Conditional Types
条件付き型の分配 / Distributive Conditional Types
T[P] - 型のプロパティ参照
infer型演算子
5-2 共用体型と交差型
5-3 テンプレートリテラル型
テンプレート文字列に従って一定の規則を持つ文字列型を作る
テンプレートリテラル型とinfer型演算子で文字列リテラル型の中身を解析する
5-4 組み込み型関数
Record(KeyType, ValueType) - 連想配列として使うオブジェクト型を生成する
ReturnType(Fn) - 関数の戻り値を取り出す
Pick(T, K) - オブジェクト型から一部のプロパティを取り出す
Omit(T, K) - オブジェクト型から一部のプロパティを除外する
Partial(T) - オブジェクト型のプロパティをすべて省略可能にする
5-5 型演算活用事例 - ルーティングパスの文字列型からパラメータを取り出す型関数ParamsOf(S)
第6章 モジュールシステム
6-1 importで拡張子なし
6-2 importで拡張子に.mjs
6-3 importで拡張子に.mts
- 発売日:20241109
- 出版社:技術評論社
- ISBN/JAN:9784297145774
最近チェックした商品
- 選択結果を選ぶと、ページが全面的に更新されます。
- 新しいウィンドウで開きます。