基本の型定義(boolean, number, string, array, tuple, any, unknown)

スポンサーリンク
TypeScript

【実務・中級編】 テンプレートリテラル型によるキーのリマッピング – TypeScript実践ガイド

こんにちは。プロダクトの規模が拡大してくると、TypeScriptの型定義地獄にハマりませんか?「また似たようなボイラープレートを書いているな…」「バックエンドのAPI仕様が変わるたびに、フロントの型を何箇所も手動で直すの、いい加減しんどい...
TypeScript

【実務・中級編】 Variadic Tuple Types (可変長タプル型) – TypeScript実践ガイド

お疲れ。最近、君が書いているコンポーネントのラッパー関数やイベントハンドラーの型定義を見せてもらったんだけどさ……うん、頑張っているのは伝わる。でも、なんでもかんでも `any` や、苦肉のテーパーとしてのオーバーロードの山で乗り切ろうとす...
TypeScript

【実務・中級編】 再帰的なConditional Types – TypeScript実践ガイド

フロントエンドの現場で頭を悩ませる瞬間の一つに、「APIから返ってくる、何層にネストしているか分からない深淵のようなJSONの型定義」がありますよね。「親の顔より見た `Partial` を使ったのに、一段下のオブジェクトがオプショナルにな...
TypeScript

【実務・中級編】 Module Augmentationによる外部モジュールの拡張 – TypeScript実践ガイド

やあ、調子はどうだい?日々、プロダクトの機能開発に追われながらも、「なんでサードパーティ製のライブラリの型定義って、こうも痒い所に手が届かないんだ……!」と天井を仰いでいる姿が目に浮かぶよ。TypeScriptを書いていると、実務ではどうし...
TypeScript

【実務・中級編】 Declaration Merging: 名前空間と関数の結合 – TypeScript実践ガイド

やあ、調子はどうだい?最近、チームのコードレビューをしていて、「おっ、ここをこう書くか!」と感心させられるコードに出会うと、シニアとしてはやっぱり嬉しいものさ。君も中級の壁を越えて、そろそろ「ただ動くだけのコード」から「保守性が高く、かつ美...
TypeScript

【実務・中級編】 Declaration Merging: インターフェースの結合 – TypeScript実践ガイド

こんにちは。日々、複雑化するフロントエンドの荒波にもまれながら、コードベースの美しさと保守性にこだわり続けているシニアアーキテクトの私だ。さて、君たちも中級の壁を越え、そろそろ「サードパーティ製ライブラリの型定義が微妙に足りない」「自作のグ...
TypeScript

【実務・中級編】 NoInferユーティリティ型による推論制御 – TypeScript実践ガイド

TypeScriptでの開発に慣れてくると、ジェネリクス(総称型)の便利さに感動する一方で、「お前、なんで勝手にそんな広い型に推論しちまったんだよ…!」と、コンパイラの親切心(おせっかい)に頭を抱える夜がやってきますよね。特に中級から上級へ...
TypeScript

【実務・中級編】 Distributive Conditional Typesの挙動 – TypeScript実践ガイド

TypeScriptで型をゴリゴリ書き始めると、必ずと言っていいほどぶつかる壁がある。「あれ、なんか思ってた挙動と違うぞ?」という瞬間だ。特に、ユニオン型(`A | B`)を条件付き型(Conditional Types:`T extend...
TypeScript

【実務・中級編】 Conditional Typesの基本構造 (T extends U ? X : Y) – TypeScript実践ガイド

おい、最近型のパズルにハマりすぎて、実際のコンポーネント設計そっちのけになってないか?……気持ちはよく分かる。TypeScriptの型システムって、一度沼にハマると抜け出せない魔力があるよな。特に「Conditional Types(条件付...
TypeScript

【実務・中級編】 Mapped TypesにおけるKey Remapping (as句) – TypeScript実践ガイド

こんにちは。チームのコードレビューを見ていると、「お、キレイに型定義書いてるね」と感心させられる一方で、たまに「うわ、これ手動で全部メンテしてるのか…地獄だな」と頭を抱えたくなるボイラープレートに出会うことがあります。特にAPIのレスポンス...
スポンサーリンク