TypeScript
型システム・Discriminated Union・ドメインモデリング
19 articles
- Post
サーバサイドTypeScriptの関数型ドメインモデリングを実践するエージェント向けプラグインを公開
サーバーサイドTypeScriptで関数型ドメインモデリングを実践するための原則を、コーディングエージェント向けスキルプラグインとして公開した。
- External
@ KAKEHASHI Tech Blog
サーバーサイドTypeScriptの型システムをどう教えるか — 他言語経験者に向けたオンボーディング事例
Python出身・Elixir出身のエンジニアにTypeScriptをオンボーディングした事例を紹介。「型検査とランタイムの境界を理解する」ことが言語背景を問わず最重要だと論じる。
- Post
TSKaigi 2026にプロポーザルが採択されました
TSKaigi 2026で「TypeScriptのclassはなぜこうなったのか」というテーマで30分セッションに登壇します。classの歴史的経緯・落とし穴・使いどころを体系的に整理するトークです。
- Post
ログのPII漏洩を防止する: TypeScriptの型推論とランタイムの境界
TypeScriptの構造的部分型はログへのPII混入を型レベルで防げない。型の限界を認めた上で、センシティブな値を関数クロージャに閉じ込めるSensitive型と、Pino redactによる多層防御の設計パターンを提案する。
- External
@ KAKEHASHI Tech Blog
TypeScriptのテストにはas const satisfiesが便利です
テストでダミーデータを定義する際の型検査エラーを、as const satisfies の組み合わせで解決する方法を紹介。Discriminated Unionやオプショナルプロパティを持つ型でも、型安全性を保ちながらリテラル型推論を活用できる。
- Post
Node.jsパフォーマンスチューニングをDatadog APMとClaude Codeでサクッとやる
Datadog APMでNode.jsのプロファイルを取得し、Claude Codeと組み合わせてパフォーマンスのボトルネックを特定・改善する方法を紹介します。
- External
@ KAKEHASHI Tech Blog
TypeScriptの宣言的な配列操作 - ビジネスロジックを明確にする
配列操作を手続き的スタイルから宣言的スタイルへ移行するメリットを解説。filterやmapなどの高階関数とカリー化を組み合わせ、ビジネスロジックの意図を明確にするコーディング手法を提案。
- Post
私がTypeScriptで `interface` よりも `type` を好む理由
interfaceの宣言マージがセキュリティリスクを招く可能性を示しながら、アプリケーション開発でtypeを優先すべき理由を解説します。
- External
@ KAKEHASHI Tech Blog
他言語経験者が知っておきたいTypeScriptのクラスの注意点
Java/C#経験者がTypeScriptのクラスを使う際の4つの落とし穴を解説。構造的部分型によるドメインオブジェクトの混同、thisの動的束縛、private修飾子の実行時の限界などについて代替アプローチとともに紹介。
- Talk
@ 関数型まつり 2025
堅牢な認証基盤の実現:TypeScriptで代数的データ型を活用する
医療システムの認証基盤で代数的データ型を活用し、複雑な状態管理を型安全に実現した事例を紹介します。
- Post
なぜTypeScriptでメソッド記法を避けるべきか?実務に近い事例の紹介
TypeScriptでメソッド記法を使うと引数の型チェックが甘くなる理由を、タスク管理サービスの実例を交えて解説します。
- Post
TypeScriptでドメインイベントを容易に記録できるコード設計を考える
データ変更の記録をドメインイベントとして型安全に設計する方法を、リポジトリ設計とテーブル設計の観点から具体的なコード例とともに解説した記事です。
- Post
Union型から交差型への変換
TypeScriptのUnion型を交差型へ変換するユーティリティ型の実装を、条件型の分配法則と関数引数の反変性という2つの型システムの性質を用いて詳しく解説した記事です。
- Post
Discriminated Unionを利用したStateパターンの実現
Discriminated Unionを活用したStateパターンの実装方法を、シンプルな状態遷移から振る舞いの入力が状態ごとに異なるケースまで段階的に紹介した記事です。
- Post
複雑な状態遷移😭: クラスではなく関数とDiscriminated Unionで状態の定義と遷移を表現する
TypeScriptでクラスによる状態管理の課題を示し、Discriminated Unionとコンパニオンオブジェクトパターンを用いて型安全に状態遷移を表現する方法を解説した記事です。
- Talk
@ TSKaigi 2024
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術
fp-tsの柔軟な関数合成・エラー合成機能を活用し、Excel入稿機能の複雑なバリデーションで正確性と効率性を両立させた事例を紹介します。
- Talk
@ Findy様 TypeScript 開発言語を統一 〜フロントからバックまで活用〜 Lunch LT
品質とスピードを両立: TypeScript の柔軟な型システムをバックエンドで活用する
TypeScriptの柔軟な型システムをバックエンドで活用し、品質とスピードを両立させるための実践的なテクニックを紹介します。
- Post
TSKaigiにプロポーザルが採択されました🎉
TSKaigi 2024へのプロポーザル採択報告と、サーバサイドTypeScriptでfp-tsを活用した複雑なビジネスロジック検証の取り組みを紹介する記事です。
- Post
for...of 文を使わずに Promise を直列実行するための TypeScript 向けユーティリティ
for...of文を使わずにPromiseを直列実行するためのTypeScript向けユーティリティ関数forOfを紹介する記事です。