- C# 設計ルールをレビューだけに頼らず自動チェックする
設計ルールの確認漏れを減らすために、C#のアクセス制限やアナライザーを使う考え方を紹介します。実装で確認できる自動チェックを題材に、対象の絞り方、例外の扱い、導入しない判断基準を説明します。
- TypeScript APIの型を手書きせず生成して修正漏れを減らす
API仕様からTypeScriptの型と通信コードを生成する構成を、実際の実装をもとに紹介します。生成コードと手書きコードの分け方、API変更時の作業順序、型チェックでは見つからない問題を説明します。
- C# バッチ処理の入口と処理本体を分けて変更しやすくする
定期実行や通知受信のコードに業務処理を詰め込まず、処理本体を別クラスへ分ける方法を紹介します。実装を題材に、再利用、テスト、例外処理をまとめる範囲と、分割だけでは解決しない点を説明します。
- ASP.NET Core 種類ごとの処理をまとめて条件分岐の修正漏れを減らす
入力チェックと表示作成に同じ条件分岐が増えたとき、種類ごとのクラスと登録表へ整理する方法を紹介します。実装を題材に、DIで複数のクラスを受け取る方法、追加時の変更箇所、分割しない判断基準を説明します。
- ASP.NET Core 承認履歴に結果だけでなく表示内容も残す設計
承認履歴に何を保存すればよいのかを、承認機能の実装をもとに解説します。注文IDだけでは足りない場面、説明文を保存する理由、同じ表示を再利用する工夫、小さく実装するための判断基準を紹介します。
- C# enumで決められた状態を表す
注文状態を文字列で持つと、shippdのようなタイプミスもコンパイルできます。候補が固定されている値はenumで表せます。数値を明示すると、途中へ値を追加しても既存値がずれません。DBや外部APIへ数...
- PostgreSQL インデックスで検索を速くする基本
商品数が少ない間は全行を調べても速く見えますが、データが増えると検索条件に合う行を探す時間が長くなります。インデックスは、特定の列から行を探しやすくする構造です。次の検索で利用される可能性があります。...
- ASP.NET Coreで画像ファイルを安全にアップロードする
画像を受け取るAPIでは、拡張子だけを信頼して保存すると、想定外の内容や巨大なファイルを受け入れる可能性があります。ここでは小さな画像を1件受け取る基本と、最低限確認したい境界を扱います。フォームのフ...
- React useMemoで重い計算結果を再利用する
一覧の絞り込みや並べ替えを描画のたびに行うと、データ量や計算内容によっては画面操作が遅くなります。useMemoは、依存する値が変わらない間、以前の計算結果を再利用します。productsまたはque...
- TypeScript Recordでキーと値の対応表を型安全に作る
ステータスごとの表示名や色を定義するとき、文字列を自由にキーへ使うと、追加漏れやタイプミスに気付きにくくなります。キーの候補が決まっている対応表にはRecordを利用できます。RecordOrderS...