Start Debugging

タグ: comparison

53 件 · ページ1/6

Riverpod の ref.watch と ref.read の違いと、それぞれをいつ使うか
ref.watch は購読して再ビルドし、ref.read は一度読むだけで再ビルドしません。watch はすべての build メソッドの中で、read はイベントのコールバックの中だけで使います。判断マトリクス、flutter_riverpod 3.4.3 における両メソッドのソースコード、そして 4 つの静かな失敗パターン (コールバック内の watch、プロバイダー本体での read、autoDispose なプロバイダーへの read、最適化のつもりの read) を解説します。
.NET 11 のコンテナーイメージにおける framework-dependent と self-contained と Native AOT の比較
ASP.NET Core サービスを .NET 11 で動かすなら、chiseled な aspnet イメージ上の framework-dependent が正しい既定です。ランタイムのレイヤーがサービス間で共有され、ランタイムの CVE はベースイメージの差し替えだけで塞げるからです。self-contained + トリミングと Native AOT はイメージを 2 倍から 5 倍小さくし、コールドスタートを大幅に速くしますが、その代わりに前述の利点を失います。実測された公開サイズ、共有レイヤーの計算、そして AOT の経路を壊す .NET 11 のベースイメージ推論バグを扱います。
C# のリポジトリメソッドで Task を直接返す vs async/await でパススルーする: どちらを使うべきか
リポジトリのパススルーメソッドで async/await を省略すると約 6 ns と 72 バイトを節約できますが、スタックフレーム、try/catch のセマンティクス、安全なリソース破棄を失います。計測済みのホットパス上の純粋なパススルーでない限り、return await を残してください。
Flutter の Riverpod Notifier と AsyncNotifier と StreamNotifier: どれを継承すべきか
選択は build() の戻り値の型で決まります。T なら Notifier、FutureOr<T> なら AsyncNotifier、Stream<T> なら StreamNotifier です。判断のための比較表、その理由となる型階層、そして == によるフィルタリングと状態の上書きという落とし穴を解説します。flutter_riverpod 3.4.2 と Flutter 3.44.2 で検証済みです。
ASP.NET Core 11 の OpenAPI ドキュメントにおける Scalar と Swagger UI の比較
Scalar は gzip 圧縮後 1.02 MiB の JavaScript と、はるかに優れたリクエストビルダーを配信します。Swagger UI は 514 KiB で、.NET 11 が既定で出力する OpenAPI 3.2 をレンダリングします。実測したペイロード、3.2 対応の差、両者のエンドポイントルーティング、そして決め手になる認証まわりの詳細をまとめます。
.NET 11 のレスポンス圧縮における Zstandard と Brotli と Gzip の比較
.NET 11 の動的な API レスポンスには Zstandard が正しい既定値ですが、ASP.NET Core のプロバイダーが出荷時に設定している品質のままではいけません。実際の JSON ペイロードを使ったベンチマークで、品質 1 が既定の品質 3 をサイズと CPU の両方で上回る理由、Brotli が今も勝つ場面、そして Gzip が互換性のためのフォールバックとしてのみ残る理由を示します。
Aspire と Docker Compose の比較: 複数サービスのローカル開発
Aspire 13.4.6 はプロジェクトをデバッグ可能なホストプロセスとして実行するため .NET の内側のループで有利であり、Docker Compose は compose ファイルが CI とデプロイの契約も兼ねている場合に有利です。両者の起動時間と編集から実行までの実測値、それぞれが自動で注入する構成、そして判断を決める6つの落とし穴を解説します。
ASP.NET Core の統合テストにおける WebApplicationFactory と Testcontainers の比較
両者は選択肢の関係にありません。WebApplicationFactory はアプリケーションを起動し、Testcontainers はその依存先を起動します。.NET SDK 10.0.201 で計測した結果、コンテナーを持つフィクスチャはクラスあたり 1.7 秒、SQLite なら 10 ミリ秒。そして Postgres が 22001 で拒否する HasMaxLength(16) 違反を、SQLite は黙って受け入れます。
xUnit v3 vs NUnit vs MSTest 2026年版: どれを選ぶべきか
新規の .NET プロジェクトには xUnit v3、制約モデルに慣れているなら NUnit 4.6、すでに使っているなら MSTest 4 を選びます。.NET SDK 10.0.201 上で実測した比較です。並列実行のデフォルト、テストクラスのライフサイクル、アサーション失敗時の出力、そして NUnit のランナーを壊す Microsoft.Testing.Platform のバージョン競合を扱います。
次へ