【ドットネットマウイ】

.NET MAUI(ドットネット マウイ) とは?

💡 1つのコードで4つの世界を制覇する、.NETの万能リモコン
📌 このページのポイント
.NET MAUI マルチプラットフォーム構成 C# / XAML 共通コード 1つのコードベースで開発 .NET MAUI フレームワーク iOS UIKit Android Android Views Windows WinUI 3 macOS Mac Catalyst 📱 📱 💻 🖥️ ネイティブUIに変換されるため各OSの操作感で動作
.NET MAUIのマルチプラットフォーム構成
ひよこ ひよこ

.NET MAUIって名前がかっこいいけど、何ができるの?

ペンギン先生 ペンギン先生

C#というプログラミング言語ひとつで、iPhone・AndroidWindowsMacの全部で動くアプリが作れるフレームワークだよ。料理で言えば、1つのレシピで和食も洋食も中華も作れる万能レシピブックみたいなものだね

ひよこ ひよこ

Xamarinっていうのとは何が違うの?

ペンギン先生 ペンギン先生

Xamarinは.NET MAUIの前身で、いわばバージョン1だね。MAUIはXamarinの良いところを引き継ぎつつ、.NET 6以降に統合されてもっとシンプルに使えるようになったんだよ

ひよこ ひよこ

FlutterとかReact Nativeとも似てる気がするけど…

ペンギン先生 ペンギン先生

いい質問だね。FlutterDart言語、React NativeJavaScriptを使うけど、MAUIはC#を使うのが大きな違い。すでに.NETやC#に慣れた開発者にとっては、新しい言語を覚えなくていいから圧倒的に楽なんだよ

ひよこ ひよこ

ネイティブアプリってWebアプリとは何が違うの?

ペンギン先生 ペンギン先生

ネイティブアプリはスマホのカメラやGPSなどハードウェアに直接アクセスできて、動作も速いんだ。MAUIはネイティブのUIコントロールを使うから、各プラットフォームの見た目や操作感に自然に馴染むんだよ

ひよこ ひよこ

実際の開発で困ることはないの?

ペンギン先生 ペンギン先生

正直に言うと、プラットフォーム固有の機能を使いたいときはそれぞれのOSの知識が必要になることもある。あと、Blazor Hybridという仕組みを使えばWebの技術(HTML/CSS)でUIを書くこともできるから、チームのスキルに合わせて柔軟に選べるのが強みだね

ひよこ ひよこ

将来的にはもっと広がりそう?

ペンギン先生 ペンギン先生

MicrosoftWindowsだけでなくモバイルやmacOSも本気でサポートしている証拠でもあるからね。特に企業の業務アプリでは、1つのコードベースで全社員のデバイスをカバーできるのが大きなメリットだよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「.NET MAUI」って出てきたら「C#で書いたコードがiPhoneでもAndroidでもPCでも動く仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「.NET Multi-platform App UI」 = .NETマルチプラットフォームアプリUI
💬 MAUIはハワイのマウイ島…ではなく、Multi-platform App UIの頭文字だよ。でも覚えやすいように島の名前っぽくしたのかもしれないね
← 用語集にもどる