Earn More by Sharing What You Love
Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!

Tim Corey
37分50秒
クロスプラットフォームのアプリケーションを構築することは、現代の開発者にとって基本的なスキルであり、基本となるプロジェクト構造を理解することは不可欠です。 この記事は、ティム・コーリーのビデオ".NET MAUI First Look - What is it, how do we use it, and is it ready"に触発され、.NET MAUIフレームワークを使用したクロスプラットフォームアプリの構築の複雑さについて掘り下げています。
.NET Frameworkは、Windows専用 for .NETアプリケーションの構築と実行をサポートし、デスクトップ、Web、サーバーアプリケーション用の堅牢な環境を提供します。 対照的に、.NET MAUIは、.NET実装を使用したクロスプラットフォーム開発にこの機能を拡張し、統一されたコードベースでWindows、Android、iOS上で動作するアプリケーションを作成できるようにします。
ティムの洞察に従うことで、このソフトウェア開発フレームワークのセットアップ、設定、最適化の方法を探求し、.NET MAUIの可能性をフルに活用して、効率的で保守性の高いモバイルおよびデスクトップアプリケーションを構築します。
.NET MAUIは、.NETエコシステム内の最先端のクロスプラットフォームフレームワークで、開発者はマネージドコードを使用してAndroid、iOS、macOS、Windows用のアプリケーションを作成できます。 包括的な.NETフレームワークのクラスライブラリと共通言語ランタイム(CLR)を活用し、異なるオペレーティングシステム間で効率的なパフォーマンスを実現します。
.NET MAUIのモジュール式で最適化されたアーキテクチャは、C#やVisual Basicなど、さまざまなプログラミング言語をサポートしています。 Visual Studioとシームレスに統合されているため、.NET Foundationと.NET開発者の活発なコミュニティに支えられ、効率的な.NET開発を保証します。
このフレームワークは、Web、デスクトップ、モバイルアプリケーションのクロスプラットフォーム互換性を提供し、.NET開発の未来を体現しています。 .NETコードをマシンコードにコンパイルする機能と、WPFやWindows Formsのようなアプリケーションモデルフレームワークのサポートにより、.NET MAUIは現代 for .NETアプリケーション開発者にとって多用途で強力なツールです。
ティムはまた、.NET MAUIの概要についても説明し、Multi-Application User Interfaceの略で、Android、iOS、macOS、Windows、Tizenなどさまざまなプラットフォーム上で動作するアプリケーションを、単一のプログラミング言語でプログラムできるようにするものであることを説明しています。 ただし、Linuxは現在サポートしていません。 また、Xamarinへ for .NET MAUIの後継的な役割と、.NET 6の下で.NET Coreと.NET Frameworkのさまざまなフレーバーを統合する方法について詳しく説明しています。
ビデオの時点では.NET MAUIはまだリリースされていなかったため、TimはVisual Studioのプレビュー版を使用して.NET MAUIプロジェクトのセットアップを実演しています。 プレビュー版のわずかな違いを強調し、リリース候補ビットの安定性について言及する。
はじめに、Tim Coreyが新しい.NET MAUIプロジェクトの設定方法を示します。 以下は、彼のビデオで説明された手順です:
1.Visual Studioを開く: Visual Studioを開き、新しいプロジェクトを作成するオプションを選択することから始めます。
2.**MAUIテンプレートの選択:**プロジェクトテンプレートから、".NET MAUI App"、".NET MAUI Blazor App"、または".NET MAUI Class Library "を選択し、"Next "をクリックします。Timは.NET MAUI Appを使用しています。

3.**プロジェクト設定を構成する:**プロジェクト名を入力し、場所とソリューション名を選択します。

4.プロジェクトの作成:"作成"をクリックして、デフォルトの設定と必要なコードでプロジェクトを生成します。
このセットアップは、クロスプラットフォーム開発を探索するための基盤を提供します。Visual Studio は、MauiProgram.cs、プラットフォーム固有のフォルダー、および共有リソースのような重要なコンポーネントを含む基本的な構造を生成します。
Timは、WPFやWinUIプロジェクトとの類似点を指摘しながら、プロジェクトの構造を探ります。
Timは、.NET MAUIがWPFやWinUIプロジェクトと同様に、デザインにXAMLを使用することを強調しています。
Tim は、MauiProgram.cs の構造を説明し、エントリーポイント CreateMauiApp を持つ静的クラス MyProgram の使用を含んでいることを指摘します。 これは他 for .NETプロジェクトと同様で、フォント、依存性注入、ロギングなどの設定があります。
プロジェクトの対象は、Android、iOS、macOS(Catalyst)、Windows用 for .NET 6という複数のフレームワークです。 Windows 10(バージョン19041以上)とWindows 11に対応しています。
Timは、セミコロンで区切られた複数のフレームワークを扱うための、プロジェクトファイル内の条件文の使用について説明しています。 これにより、特定のプラットフォームをターゲットとし、プラットフォーム固有の依存関係を管理することができます。
各プラットフォーム(Android、iOS、macOS、Tizen、Windows)のフォルダは、プラットフォーム固有のコードを管理します。 開発者は、プロジェクトファイルからそれぞれのターゲットとフォルダを削除することによって、プラットフォームを除外することができます。
.NET MAUIは、プラットフォーム固有の作業の多くを抽象化し、各プラットフォームのAPIを使用するようにコードをコンパイルします。これにより、各プラットフォームのネイティブなルック&フィールが保証されます。
Tim は、プラットフォーム固有の設定を扱う iOS 用の AndroidManifest.xml や Info.plist のような構成ファイルをカバーします。 特にiOSでは、これらのファイルを簡単に編集できるGUIツールが利用可能です。
Timは、プラットフォーム固有の機能の重要性と、.NET MAUIがそれらをどのように扱うかを強調します。 Platformsフォルダについては、プラットフォーム固有のコードを含めるために、サポートされているプラットフォームごとにサブフォルダが含まれています。
Timは次に、共有プロジェクトの構造について説明し、共有コードが一度だけ書かれ、複数のプラットフォームで実行される仕組みを説明します。 彼は MainPage.xaml と MainPage.xaml.cs ファイルを調べることによってこれを示し、UI に XAML を使用し、コードビハインドに C# を使用する方法を示します。
パフォーマンスと外観を評価するには、複数のプラットフォームで.NET MAUIアプリケーションをテストすることが不可欠です。 ティムは、Windowsマシン、Androidエミュレータ、およびApple開発者アカウントを持つiOSデバイスでのテストを重視しています。
ティムは、プラットフォームによって異なるセットアップの必要性について概説します。 Androidの場合は、Androidエミュレータをインストールしてください。 iOSの場合、年間約100ドルのAppleデベロッパーアカウントが必要です。
Windowsで開発者モードを有効にすることは、.NET MAUIアプリケーションをテストするために不可欠であり、Microsoft Storeを使わずにアプリケーションをサイドロードすることができます。

Timは、Windowsマシン上で.NET MAUIアプリをテストし、ホットリロード機能を利用してアプリケーションコードに変更を加え、更新をリアルタイムで確認する様子を実演しています。

ティムは、Android 12を実行するGalaxy Nexusエミュレータをテストに使用し、エミュレータの起動、インストール、アプリケーションの起動のプロセスを説明します。

Tim氏は、両プラットフォーム上でアプリケーションを比較し、見た目の違いにもかかわらず、機能の一貫性に注目しています。

.NET MAUIはMicrosoftによって完全にサポートされており、継続的な改善が期待されています。 その後継として、Xamarinプロジェクトは.NET MAUIにアップグレードできるため、開発者はスムーズに移行できます。
Tim Coreyは、.NET MAUI、そのセットアップ、および機能の包括的な概要を提供します。 彼のビデオは、このフレームワークの探求に熱心な開発者にとって貴重なリソースです。 より深く掘り下げた実践的なコーディング例については、彼のYouTubeチャンネルIAmTimCoreyをご覧ください。また、iamtimcorey.comで利用可能なその他のリソースもチェックしてください。
Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!
Join our newsletter, you’ll get exclusive access on article updates. We value your privacy