エンジニア選書<br> 実践TypeScriptバックエンド開発―データと関数によるドメインモデリングで堅牢性を高める

個数:
電子版価格
¥3,520
  • 電子版あり

エンジニア選書
実践TypeScriptバックエンド開発―データと関数によるドメインモデリングで堅牢性を高める

  • ウェブストアに34冊在庫がございます。(2026年11月07日 02時31分現在)
    通常、ご注文翌日~2日後に出荷されます。
  • 出荷予定日とご注意事項
    ※上記を必ずご確認ください

    【ご注意事項】 ※必ずお読みください
    ◆在庫数は刻々と変動しており、ご注文手続き中に減ることもございます。
    ◆在庫数以上の数量をご注文の場合には、超過した分はお取り寄せとなり日数がかかります。入手できないこともございます。
    ◆事情により出荷が遅れる場合がございます。
    ◆お届け日のご指定は承っておりません。
    ◆「帯」はお付けできない場合がございます。
    ◆画像の表紙や帯等は実物とは異なる場合があります。
    ◆特に表記のない限り特典はありません。
    ◆別冊解答などの付属品はお付けできない場合がございます。
  • ●3Dセキュア導入とクレジットカードによるお支払いについて
    ●店舗受取サービス(送料無料)もご利用いただけます。
    ご注文ステップ「お届け先情報設定」にてお受け取り店をご指定ください。尚、受取店舗限定の特典はお付けできません。詳細はこちら
  • サイズ B5判/ページ数 376p/高さ 24cm
  • 商品コード 9784297157258
  • NDC分類 547.48
  • Cコード C3055

出版社内容情報

生成AI時代にも必要な設計の知識が一冊に!

(こんな方におすすめ)
- 大規模なコードベースでアプリケーション開発に課題を感じているエンジニア
- 関数型プログラミングの基本概念を理解しており、実務での応用方法を模索しているエンジニア
- DDDを取り入れているが、オブジェクト指向設計に限界を感じているエンジニア
- TypeScriptでも堅牢なバックエンド開発が可能か知りたいエンジニア


【目次】

●第1章:型の機能と原則
・型の機能
・型の原則

●第2章:データと振る舞い
・データと振る舞いの一体化(クラス)の課題
・データと振る舞いの分離

●第3章:エラーハンドリング
・例外によるエラーハンドリングの課題
・戻り値によるエラーハンドリングの利点
・設計方針
・Resultの概要

●第4章:戻り値によるエラーハンドリングの実践
・Result / ResultAsyncへのラップ
・関数適用
・Resultのアンラップ
・Resultリストの統合

●第5章:スキーマを用いたバリデーション処理
・バリデーションの課題
・スキーマバリデーションのライブラリ(Zod)の概要
・バリデーション
・スキーマからの型推論

●第6章:ドメインモデル
・ドメインモデルの構成要素
・ドメインモデルの実装

●第7章:集約とリポジトリ
・集約の概要
・リポジトリの概要
・集約の実装
・リポジトリの実装

●第8章:ドメインイベント
・イベントソーシングの概要
・データモデルの設計
・ドメインモデルの設計
・ドメインモデルの実装
・イベントストアの設計

●第9章:Always-Valid Domain Model
・Always-Valid Domain Modelの概要
・Always-Valid Domain Modelの実装

●第10章:入出力の依存関係
・依存関係逆転の原則
・依存注入
・ヘキサゴナル・アーキテクチャ

●第11章:依存注入の構成管理
・依存注入の課題
・DIコンテナ(typed-inject)の紹介
・サンプル構成

●第12章:ユースケース
・ユースケースの概要
・Railway Oriented Programmingの概要
・ユースケース実装のパターン

●第13章:データベースとの入出力
・Drizzle ORMの概要
・リポジトリの実装
・リポジトリのテスト

●第14章:クライアントとの入出力
・Webフレームワーク(Hono)の概要
・HTTP APIの契約と実装
・サーバーの起動・停止

内容説明

本書は、TypeScriptで堅牢なバックエンドシステムを設計・実装する方法を解説します。具体的には、ドメイン駆動設計の考え方を用いて業務上の概念やルールを整理し、ドメインモデルとして表現します。その実装では、データと振る舞いを分離しますが、関連する型と関数を同じモジュールにまとめることで、ドメイン知識がコードベースの各所へ分散することを抑えます。そして、この実装方針を支えるものとして関数型プログラミングの考え方を扱います。ただし、関数型プログラミングそのものを網羅的に解説することは目的としていません。圏論や高度な型理論ではなく、純粋関数を中心にプログラムを構成し、不変なデータと明確な入力・出力によって振る舞いを組み立てる「スタイルとしての関数型」に焦点を当てます。入力と出力の関係が明確な小さな関数は、関数ごとに振る舞いを把握しやすく、変更の影響も予測しやすくします。本書では、こうした関数を組み合わせてより大きな処理を構成します。―「はじめに」より。

目次

型の機能と原則
データと振る舞い
エラーハンドリング
戻り値によるエラーハンドリングの実践
スキーマを用いたバリデーション処理
ドメインモデル
集約とリポジトリ
ドメインイベント
Always‐Valid Domain Model
入出力の依存関係
依存注入の構成管理
ユースケース
データベースとの入出力
クライアントとの入出力

著者等紹介

木村彰宏[キムラアキヒロ]
SaaS事業を支えるプラットフォーム基盤と、データ利活用のための分析基盤の企画・設計・開発に長年従事。マーケティングテクノロジー企業でVPoE、医療プラットフォーム企業でChief Architectを歴任し、プロダクト戦略や技術戦略を推進。曖昧な要求をモデルで具体化し、システム境界とデータの流れを設計してコードへ落とし込むことを得意とする。専門領域の1つは、TypeScriptによる関数型ドメインモデリング(本データはこの書籍が刊行された当時に掲載されていたものです)
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。

最近チェックした商品