C#

【C#】appsettings.json完全ガイド|構成プロバイダー・Options Validation・Named Options・User Secrets・環境変数まで

C#/.NETのappsettings.jsonを完全解説。構成プロバイダーの優先順位・環境別オーバーライド・IOptions/IOptionsSnapshot/IOptionsMonitorの使い分け・DataAnnotations/IValidateOptions/ValidateOnStartによるバリデーション・Named Options・PostConfigure・User Secrets・環境変数・配列バインド・reloadOnChange・カスタムプロバイダーまで。
C#

【C#】ログ出力完全ガイド|ILogger・構造化ログ・LoggerMessage・Serilog・スコープ・パフォーマンス最適化まで

C#/.NETのログ出力を完全解説。ILoggerの構造化ログ(メッセージテンプレート)・LoggerMessage.Define/[LoggerMessage]ソースジェネレーター・BeginScope・appsettings.jsonでのフィルタ・Serilogの全Sink/Enricher/Filter・IHostBuilder連携・2段階初期化・相関ID・パフォーマンス最適化・PII漏洩対策まで。
C#

【C#】シングルトン完全ガイド|6実装パターン比較・Lazy・beforefieldinit・DI・アンチパターンまで

C#のシングルトンパターンを徹底解説。6種類の実装(Eager/静的コンストラクタ/Lazy/Double-Checked Locking/Nested Type/DI)を比較。LazyThreadSafetyMode・beforefieldinit・スレッドセーフ性・テスタビリティ・IDisposable・リフレクション対策・Singleton vs Static vs DIの使い分け・アンチパターンまで。
C#

【C#】非同期・並列処理の実践パターン集|Fan-out/Rate Limit/Pipeline/Worker Pool/エラーハンドリングまで

C#の非同期・並列処理の実践パターンを10種類体系化。Fan-out/Fan-in・SemaphoreSlimによるレート制限・パイプライン処理・Worker Pool・Producer/Consumer・Map-Reduce・部分失敗の処理・タイムアウト・リトライ・キャンセル連携まで、実コードとベンチマーク観点で解説。概念整理は5914、本記事は実装レシピ集。
C#

【C#】非同期処理と並列処理の違い完全ガイド|Task・Parallel・PLINQ・Dataflow・Channelsの使い分け

C#の非同期・並列・マルチスレッド・同時実行の4つの概念を整理。I/O-bound vs CPU-boundの判断基準・Task.RunとasyncTaskの違い・Parallel.For/ForEach/Invoke/ForEachAsync・PLINQ・TPL Dataflow・Channels・MaxDegreeOfParallelism・ThreadLocal・False Sharing・sync over asyncの落とし穴まで。
C#

【C#】依存性注入(DI)完全ガイド|ライフタイム・Keyed Services・Decorator・HostedService・落とし穴まで

C# / .NET の依存性注入を完全解説。3つの注入パターン・Singleton/Scoped/Transientライフタイム・Captured Dependencies問題・Keyed Services(.NET 8+)・IEnumerable複数登録・Decoratorパターン・Factory登録・IOptions vs IOptionsSnapshot vs IOptionsMonitor・HostedService・Primary Constructor連携・ValidateOnBuild・よくある落とし穴まで。
C#

【C#】init専用プロパティ完全ガイド|IsExternalInit・required連携・with式・深い不変性・スレッドセーフまで

C# 9.0 initアクセサを完全解説。内部実装(IsExternalInit)・.NET Standard 2.0での利用・requiredとの組み合わせ(C# 11)・浅い不変性 vs 深い不変性・with式・継承時の振る舞い・スレッドセーフ性・System.Text.Jsonシリアライズ・実践的なDDD/DTO設計まで。
C#

【C#】タプル完全ガイド|Tuple vs ValueTuple・名前付き要素・分解・タプル等価・パターンマッチング・recordとの使い分けまで

C#のタプル(Tuple / ValueTuple)を完全解説。参照型 vs 値型の違い・名前付き要素・Deconstruct実装・タプル等価演算(==)・LINQ/パターンマッチングとの連携・recordとの使い分け・8要素超のRest・ITuple・よくある落とし穴まで。
C#

【C#】パターンマッチング完全ガイド|全パターン種別・switch式・is式・list/positional/relational・C#バージョン別機能まで

C#のパターンマッチングを全パターン種別(宣言・型・定数・関係・論理・プロパティ・位置・List・var・破棄)で体系的に解説。switch式・is式・when節・網羅性(CS8509)・C# 7〜12のバージョン別追加機能・records/Deconstruct連携・実践パターンまで。
C#

【C#】QueueとStack完全ガイド|内部構造・PriorityQueue・Channels・Concurrent版・実践パターンまで

C# QueueとStackを完全解説。リングバッファの内部構造・TryDequeue/TryPop・PriorityQueue(.NET 6+)・ImmutableQueue/Stack・ConcurrentQueue/ConcurrentStack・Channels・BFS/DFS/Undo-Redo実装パターン・よくある落とし穴まで。
C#

【C#】HashSet完全ガイド|内部構造・集合演算・IEqualityComparer・SortedSet・FrozenSet・スレッドセーフまで

C# HashSetを完全解説。ハッシュテーブルの内部構造・Add/Contains/Removeの計算量・集合演算(UnionWith/IntersectWith/ExceptWith)・StringComparer・SortedSet・ImmutableHashSet・FrozenSet(.NET 8+)・スレッドセーフ実装・LINQ Distinct vs HashSet・よくある落とし穴まで。
C#

【C#】Dictionary完全ガイド|内部構造・安全な操作・IEqualityComparer・ConcurrentDictionary・SortedDictionaryまで

C# Dictionaryを完全解説。ハッシュテーブルの内部構造・TryAdd/TryGetValue・カスタム等値比較器(StringComparer)・ConcurrentDictionary・SortedDictionary vs SortedList・ImmutableDictionary・FrozenDictionary・LINQ活用・よくある落とし穴まで。
C#

【C#】属性(Attribute)完全ガイド|AttributeUsage・組み込み属性・CallerInfo・DataAnnotations・リフレクションまで

C# 属性(Attribute)を完全解説。AttributeUsageのAllowMultiple/Inherited・組み込み属性(Obsolete/Conditional/DebuggerDisplay/Flags/DllImport)・CallerMemberName等の呼び出し元情報・カスタム属性設計・DataAnnotations検証・System.Text.Json属性・リフレクション取得まで。
C#

【C#】CancellationToken完全ガイド|Register・伝播・Dispose・ASP.NET Core連携まで

C# CancellationTokenを完全解説。CancellationTokenSourceの構造・3つのキャンセル確認方法・Register()コールバック・Token.Noneとdefaultの違い・非同期チェーン伝播・CreateLinkedTokenSource・Dispose漏れ防止・ASP.NET Core RequestAborted・グレースフルシャットダウンまで。
C#

【C#】例外フィルター(when句)完全ガイド|スタック保全・ログパターン・パターンマッチング・実践例まで

C# 例外フィルター(when句)を完全解説。falseのときスタックが巻き戻されない仕組み・ログ専用フィルターパターン・パターンマッチングとの組み合わせ・catch内if-rethrowとの違い・HttpStatusCode別ハンドリング・SqlException.Number・ExceptionDispatchInfoまで。
C#

【C#】record型完全ガイド|自動生成メンバー・with式・record struct・継承・DDD活用まで

C# record型を完全解説。コンパイラ自動生成メンバー(PrintMembers・Deconstruct・EqualityContract)・with式の内部実装・record継承とsealed・record struct vs readonly record struct・System.Text.Json・DDDバリューオブジェクトへの応用まで。
C#

【C#】デリゲートとイベント完全ガイド|MulticastDelegate・EventHandler・addアクセサ・メモリリーク対策まで

C#デリゲートとイベントを完全解説。MulticastDelegate/GetInvocationList・EventHandler<TEventArgs>標準パターン・add/removeアクセサ・スレッドセーフな?.Invoke()・イベント購読のメモリリーク対策・デリゲートの共変性・event vs Func設計判断まで。
C#

【C#】ジェネリック完全ガイド|where制約・共変性・IComparable・default(T)・静的メンバーまで

C#ジェネリックを完全解説。where制約8種・IComparable<T>/IEquatable<T>の実装・共変性(out T)と反変性(in T)の仕組み・default(T)の挙動・クローズドジェネリック型の静的メンバー・値型でのボクシング回避まで。
C#

【C#】ラムダ式完全ガイド|クロージャ・Func/Action・式ツリー・静的ラムダ・メソッドグループ・パフォーマンスまで

C#ラムダ式を完全解説。Func/Action/Predicateの使い分け、クロージャの仕組みとループ変数の罠、式ツリー(Expression<Func<T>>)とIQueryable、静的ラムダ(C# 9)、自然型(C# 10)、メソッドグループ変換、ローカル関数との違い、パフォーマンスまで。
C#

【C#】IDisposable・using完全ガイド|Disposeパターン・ファイナライザー・SafeHandle・IAsyncDisposable・実装原則まで

C#のIDisposableとusingを完全解説。using宣言とtry-finallyの等価コード、正しいDisposeパターン(マネージド/アンマネージド分離)、ファイナライザーとGC.SuppressFinalize、SafeHandle、IAsyncDisposable、べき等性、HttpClient罠、DI管理まで。