4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

記事投稿キャンペーン 「2024年!初アウトプットをしよう」

.NET MAUIとCleanArchitectureで簡単なアプリを作成してみる1~はじめに~

Last updated at Posted at 2024-01-22

概要

.NET MAUIとCleanArchitectureの学習備忘録です。
簡単なWindows、Androidのクロスプラットフォームアプリを作成します。

バリバリの専門家が書く記事ではないことをご了承ください。
間違いがありましたら、ご指摘いただけると嬉しいです。

.NET MAUIとは

C#とXAMLでクロスプラットフォームアプリを作成できるフレームワークのことです。
.NET MAUI とは

CleanArchitectureとは

ソフトウェアアーキテクチャの種類ではなく、いわば変更に強いアーキテクチャ設計思想のことです。

簡単にまとめると、
・レイヤーで分けて関心事を分離しましょう(関心事の分離)
・依存の流れは一方通行にしましょう
・依存関係を逆転させて依存を制御しましょう(依存性逆転の原則)
ということ

クリーンアーキテクチャといえば下図ですが、
しっかりと理解するのは難しかったので、上記を概ね実現できればOKとします。
CleanArchitecture.jpg
引用元:https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html

レイヤーで分けて関心事を分離しましょう(関心事の分離)

なんでもかんでも一箇所で行うのではなく、異なる責務ごとに分けましょう、
他のコンポーネントへの影響を最小限にしましょう、ということです。
CleanArchitectureに限った話ではありません。

関心を分離することで、自然と疎結合になり、保守性、テスト容易性が高まります。

依存の流れは一方通行にしましょう

上図の円に描かれている矢印の向きにしか依存しません、ということ。
EntitiesがUse CasesやControllersに依存してはいけません。

依存関係を逆転させて依存を制御しましょう(依存性逆転の原則)

依存する側は、直接クラスや関数を呼び出すのではなく、抽象インタフェースを呼び出しましょう、ということです。

クラスAがクラスBを呼び出すには、
A→B.png
ではなく、
B→A.png
という流れになります。

まとめ

今回は.NET MAUIとCleanArchitectureの基礎知識を学習しました。
次は開発環境を作成します。
.NET MAUIとCleanArchitectureで簡単なアプリを作成してみる2~開発環境~

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?