فریمورک MAUI رابط کاربری اپلیکیشن چند پلتفرمی دات نت یا Net MAUI. چیست؟

فریمورک MAUI معرفی رابط کاربری اپلیکیشن چند پلتفرمی دات نت یا Net MAUI.

اگر بتوانیم با استفاده از دات نت سی شارپ (.Net C#) و زمل XAML از یک پایه کد واحد ، اپلیکیشن های بومی موبایل و برنامه های دسکتاپ ایجاد کنیم چطور است؟ خیلی جالب خواهد بود نه؟ بله، حالا می‌توانیم برنامه‌های بومی اندرویید ،آی او اس ، مک او اس و ویندوز را از یک پایه کد ایجاد کنیم. این کار با استفاده از ویژگی جدید دات نت به رابط کاربری اپلیکیشن چند پلتفرمی دات نت یا (MAUI) امکان پذیر است. در این مقاله، ما بیشتر درباره MAUI بحث خواهیم کرد، در پایان این مقاله، ایده های اساسی در مورد MAUI و نحوه شروع به دست خواهید آورد

فهرست مطالب

  • MAUI چیست؟
  • تاریخچه MAUI
  • مقایسه MAUI  و Xamarin Forms
  • شباهت بین زامارین فرم (Xamarin.Forms) و MAUI
  • چه چیز هایی از زامارین به MAUI تغییر کرده است ؟
  • چه کسی می تواند از چارچوب MAUI استفاده کند؟
  • معماری MAUI
  • برنامه های فریمورک MAUI که در بسته های برنامه بومی کامپایل می شوند
  • ویژگی های MAUI
  • IDE برای توسعه MAUI
  • نتیجه
  • منابع

MAUI چیست؟

همانطور که قبلاً گفتیم ، رابط کاربری اپلیکیشن چند پلتفرمی یا MAUI یک فریمورک متن باز چند پلتفرمی است. ما می‌توانیم برنامه‌های بومی اندروید، آی او اس (IOS)، مک او اس (macOS) و ویندوز را از یک پایه کد با استفاده از MAUI توسعه دهیم و بسازیم.

فریمورک MAUI تکامل یافته همان زامارین Xamarin.Forms است که از برنامه موبایل به دسکتاپ هم گسترش یافته است. اگر قبلاً روی Xamarin.Forms کار کرده اید، می توانید به راحتی با دات نت ام ای یو آی یا رابط کاربری اپلیکیشن چند پلتفرمی دات نت (DotNet MAUI) ارتباط برقرار کنید .

فریمورک MAUI چیست؟
در این تصویر نحوه ارتباط اجزا و پلت فرم های مختلف وساختار فریمورک MAUI را مشاهده می نمایید

تاریخچه ای خلاصه و نگاهی سریع به ریشه های .NET MAUI در XAMARIN

در فوریه 2016، زامارین توسط مایکروسافت خریداری شد و از کنفرانس سالانه مایکروسافت بیلد پس از آن مشخص شد که هدف این بوده که ابزار Xamarin در دات نت قرار داده شده و تمام کتابخانه‌ها و SDK‌ها را یک واحد یکسان یکپارچه شود. همه اینها با انتشار دات نت 5 در نوامبر 2020 شروع شد، اما قرار بود با دات نت 6 در نوامبر 2021 تکمیل شود.

برای اینکه این یکپارچگی اتفاق بیفتد – و رویای دات نت برای اینکه زبان سی شارپ زبان انتخابی باشد تا یک بار یک برنامه نوشته شده و در هر جایی اجرا شود .

همانطور که در زیر می بینید، این مدل با Bindings و API پیچیده است که به شما امکان می دهد کد C# خود را بنویسید تا بر روی دستگاه های پشتیبانی شده توسط Xamarin یعنی Android و IoS و بعد بقیه مانند UWP و Tizen اجرا شود.

مقایسه MAUI و Xamarin.Forms

تکامل Xamarin.Forms در انتها به یک دات نت واحد یکپارچه سازی و ادغام میشود . با دات نت 6، توسعه برنامه های بومی بخشی از دات نت می شود. اجرای پروژه های MAUI در همه سیستم عامل ها مهمترین مزیت آن است.

یک نکته :

خیلی ها فکر میکنند که Xamarin و Xamarin Form مثل هم هستند و کارایی مشابهی دارند. اما این دو کامل با هم تفاوت دارند و یکی از مهم ترین تفاوت های آن ها این است که شما با استفاده از زامارین میتوانید برای اندروید و IOS به صورت جداگانه اپلیکیشن بسازید ولی با استفاده از زامارین فرم میتوانید به صورت مشترک برای سیستم عامل های اندروید و IOS و حتی ویندوز برنامه بسازید و خروجی بگیرید.

شباهت بین فرم های Xamarin و فریمورک MAUI

  • ما هنوز هم می توانیم از زمل XAML و سی شارپ C# برای توسعه برنامه ها استفاده کنیم.
  • ما می توانیم مدل های برنامه نویسی MVVM، Reactive UI، Model-View-Update را انتخاب کنیم
  • ما می توانیم برنامه های دسکتاپ اندروید، iOS، macOS، ویندوز را با استفاده از چارچوب MAUI بسازیم.
  • اگر قبلاً با Xamarin تجربه دارید، می توانید به راحتی با MAUI ارتباط برقرار کنید.

چه چیزهایی از زامارین در NET MAUI. تغییر کرده است؟

هنگامی که مایکروسافت Xamarin را خریداری کرد، واضح بود که تیم می‌خواهد Xamarin را به طور کامل در .Net قرار دهد تا بتواند ایده Build Once یا یکبار ساخت اجرا شود.

یکپارچه سازی BCL بخش بزرگی از این تغییر است زیرا Xamarin دیگر مانند System.IO به بخشی واقعی ای از دات نت تبدیل می شود. بنابراین اکنون، Xamarin.Forms تبدیل به Microsoft.MAUI و Xamarin.Essentials تبدیل به Microsoft.Maui.Essentials می شود و همه به عنوان Workloads با استفاده از Visual Studio 2022 نصب می شوند.

چه کسانی می تواند از فریمورک MAUI استفاده کنند؟

  • توسعه دهندگانی که می خواهند با استفاده از سی شارپ و زمل از یک پایه کد، برنامه های چند پلتفرمی بسازند.
  • توسعه کنندگانی که میخواهند با اشتراک‌گذاری طراحی ها و رابط های کاربری یکسان بین پلتفرم‌ها ، (که مسلما باعث صرفه‌جویی بیشتری در زمان پیاده‌سازی طراحی می‌شود) برنامه را بنویسند
  • توسعه دهندگانی که در بین پلتفرم‌ها، میخواهند ، کد و تست برنامه یکسانی را اعمال کنند.

معماری MAUI

در یک برنامه MAUIِ، کدی را که می نویسیم عمدتاً تعامل دارد با :

  • API های آن که در شکل 2 با شماره 1 مشخص شده است).
  • سپس  مستقیماً از API های پلتفرم بومی استفاده می کند (که در شکل 2 با شماره 3 مشخص شده است).
  • در صورت لزوم در مواردی ، کد برنامه ممکن است مستقیماً هم از APIهای پلتفرم ها استفاده کند (در تصویر در شکل 2 با شماره 3 مشخص شده است).
معماری فریمورک MAUI یا رابط کاربری اپلیکیشن چند پلتفرمی دات نت
فریمورک MAUI یا رابط کاربری اپلیکیشن چند پلتفرمی دات نت و ساختار لایه ها ،پلتفرم ها و اجزای به هم مرتبط

برنامه‌های فریمورک MAUI که در بسته‌های برنامه بومی کامپایل می شوند :

برنامه‌های اندرویدی که با استفاده از NET MAUI ساخته شده‌اند، از سی شارپ به یک زبان سطح متوسط یا (IL)کامپایل می‌شوند که پس از راه‌اندازی برنامه، از نوع کامپایل درجا و بلادرنگ (JIT) به یک زبان اسمبلی بومی کامپایل می‌شوند.

برنامه‌های iOS که با استفاده از فریمورک MAUI ساخته شده‌اند، از نوع کامپایل جلو تر از زمان (AOT ) از C# به کد اسمبلی اصلی ARM کامپایل می شوند .

برنامه‌های macOS که با استفاده از فریمورک MAUI ساخته شده‌اند از کاتالیست مک (Mac Catalyst) استفاده می‌کنند، راه‌حلی از Apple که برنامه iOS شما را که با کیت UI ساخته شده است به دسک‌تاپ آورده و در صورت نیاز App Kit و APIهای پلتفرم بیشتر را به آن اضافه می‌کند.

برنامه‌های Windows که با استفاده از فریمورک MAUI ساخته شده‌اند، از کتابخانه UI Windows (WinUI) 3 برای ایجاد برنامه‌های بومی استفاده می‌کنند که می‌توانند هدفشان دسکتاپ ویندوز و پلتفرم جهانی ویندوز (UWP:Universal Windows Platform) باشد.

ویژگی های MAUI :

فریمورک MAUI  ای پی آی های چند پلتفرمی را برای ویژگی‌های دستگاه بومی ارائه می‌کند. در اینجا برخی از ویژگی های خوب ارائه شده توسط MAUI را عنوان میشود :

  1. دسترسی به حسگرهایی مانند شتاب‌سنج، قطب‌نما و ژیروسکوپ در دستگاه‌ها.
  2. امکان بررسی وضعیت اتصال به شبکه دستگاه و تشخیص تغییرات.
  3. ارائه اطلاعاتی در مورد دستگاهی که برنامه روی آن اجرا می شود.
  4. متن را در کلیپ بورد سیستم، بین برنامه ها کپی و جایگذاری کنید.
  5. یک یا چند فایل را از دستگاه انتخاب کنید.
  6. از موتورهای تبدیل متن به گفتار داخلی برای خواندن متن از دستگاه استفاده کنید.
  7. جریان‌های احراز هویت مبتنی بر مرورگر را شروع کنید که به یک URL ثبت‌شده برنامه خاص پاسخ تماس گوش می‌دهد.

IDE های توسعه برنامه MAUI ( محیط های برنامه نویسی MAUI )

  • ویژوال استودیو
  • کد ویژوال استودیو

با استفاده از این دو IDE، می‌توانیم اپلیکیشن‌های بومی اندروید، آی او اس ، مک او اس و ویندوز را با استفاده از MAUI بسازیم. کدنویسی تمام آن چیزی است که ما نیاز داریم، سپس انتخاب کد ویژوال استودیو هم یک گزینه هوشمندانه است.

نتیجه

در این مقاله ما به فریمورک MAUI و ویژگی های مهم آن پرداختیم . در مقالات آینده بیشتر درباره MAUI و نحوه ایجاد یک برنامه ساده یا آن صحبت خواهیم کرد. امیدوارم این مقاله برای همه شما عزیزان مفید بوده باشد و لطفا نظرات خود را در بخش نظرات به اشتراک گذاشته و یا برای ارتباط با کارشناسان ما برای مشاوره، راهنمایی و یا سفارش اپلیکیشن های اندروید با جدید ترین و بروزترین تکنولوژی های روز از بخش تماس با ما در ارتباط باشید.

برای مشاهده سایر مقالات مربوط به برنامه نویسی اندروید و تکنولوژی های روز آن  به این بخش مراجعه بفرمایید

منابع

c-sharpcorner

microsoft

×

پشتیبانی گروه توسعه دهندگان شهر

× چگونه می‌توانم به شما کمک کنم؟