Blazor + .NET 9で学ぶ Vertical Slice アーキテクチャ

Web

概要

本リポジトリは「Vertical Slice Architecture in Blazor」をテーマに、Blazor WebAssembly と .NET 9(C# 12)を用いて垂直スライスアーキテクチャを示すサンプルプロジェクトです。従来のレイヤード(層別)設計と対照的に、機能(ユースケース)ごとに UI、アプリケーションロジック、データアクセスなどをひとまとめにした「スライス」を単位として構成し、機能ごとの独立性と変更の局所化を目指します。README のバッジからも分かる通り、.NET 9 と Blazor WebAssembly を前提とした実践的なコード例を含んでおり、学習や実務導入の参考になります。(約300字)

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 2
  • ファイル数: 10
  • メインの言語: C#

主な特徴

  • Vertical Slice(機能単位)でコードを構成し、機能ごとの責務を分離している点をサンプルで示す。
  • Blazor WebAssembly と .NET 9(C# 12)を前提とした実装例を提供。
  • MIT ライセンスで公開され、学習やプロトタイプに利用しやすい。
  • プロジェクト構成やドキュメント(CHANGELOG、CONTRIBUTING)を含む実践的なサンプル。

技術的なポイント

Vertical Slice アーキテクチャは、従来のプレゼンテーション/アプリケーション/インフラといった横断的なレイヤー分割ではなく、機能(スライス)単位で関連コードをまとめる点が肝です。本リポジトリは Blazor(クライアント側 UI)と .NET 9 環境に馴染ませる形で、各スライスにページ(コンポーネント)、ハンドラー、DTO、必要ならば検証ロジックやデータアクセスを同じスコープで配置する設計を想定しています。結果として、機能追加や変更時に影響範囲が小さく、リファクタリングやテストも局所的に済むため、チーム開発での衝突が減り CI/CD との親和性も高まります。

Blazor 特有の観点では、コンポーネントやページ単位でスライスを切ることで UI とアプリケーションロジックの連携が明確になり、State の管理や DI(依存性注入)の境界を整理できます。また、クライアントとサーバー間で共有する DTO やバリデーションルールを明示的に扱うことで、WebAssembly を介した通信設計がスムーズになります。本サンプルは .NET 9 の言語機能やランタイムの改善を活かしつつ、Vertical Slice の考え方を Blazor プロジェクトに適用するための出発点を提供します。(約700字)

プロジェクトの構成

主要なファイルとディレクトリ:

  • .agent: dir
  • .gitignore: file
  • CHANGELOG.md: file
  • CONTRIBUTING.md: file
  • LICENSE: file

…他 5 ファイル

(README 抜粋)

🏗️ Vertical Slice Architecture in Blazor + .NET 9

.NET Blazor C# License

**Um projeto completo demonst…

まとめ

Blazor と .NET 9 環境で Vertical Slice の設計を体験できる、学習向けの実践的サンプルです。(約50字)

リポジトリ情報:

READMEの抜粋:

🏗️ Vertical Slice Architecture in Blazor + .NET 9

.NET Blazor C# License

Um projeto completo demonst…