رابط های کاربری کراس پلتفرم با MAUI همراه می شود
سه شنبه 20 اردیبهشت 1401بیشتر چشم انداز فعلی دات نت مبتنی بر تیم های Mono و زامارین و البته یک نسخه از ران تایم دات نت است. MAUI دات نت یکی دیگر از جدیدترین ابزارهایی است که در حال حاضر دات نت در حال کار کردن روی آن است.
به روزرسانی هسته دات نت بخش اول از پروژه ای بود که این تیم در حال کار کردن روی آن است. این پروژه در واقع به دنبال ابداع راهی برای اجرای کدهای شما در ویندوز، macOS، لینوکس، اندروید، IOS و ... است. در حال حاضر زمان آن رسیده است که یک به روزرسانی جامع را روی تجربه کاربری دریافت کنید. Win UI 3 و Windows App SDK ابزارهای رابط کاربری را برای اپلیکیشن های ویندوز فراهم می کنند و در کنار آن نیز MAUI دات نت که یک اپلیکیشن چند پلتفرمه UI است ابزارهایی را در اختیار شما قرار می دهد که به شما اجازه می دهند تا اپلیکیشن های کراس پلتفرم را طراحی کنید و آنها را در دسکتاپ و موبایل اجرا کنید.
آشنایی با MAUI دات نت
MAUI دات نت که در ابتدا به عنوان بخشی از موج ویژگی های جدید دات نت عرضه شده بود ثابت کرد که می تواند پیچیدگی ها و کاربردهای بیشتری را داشته باشد. با وجود این که محدودیت های بسیار زیادی برای آن وجود دارد ولی نزدیک به آماده شدن است و در حال حاضر در دسترس عموم قرار دارد تا به صورت آزمایشی مورد استفاده قرار گیرد. وارد شدن نسخه آزمایشی این ابزار به بازار یک نقطه عطف بسیار مهم به شمار می آید چرا که این نقطه در چرخه توسعه نرم افزار این ابزار از اهمیت بالایی برخوردار است و مایکروسافت نیز سرمایه گذاری های زیادی را روی آن انجام داده است.
ویژگی go live برای MAUI دات نت
تا این مرحله نسخه های پیش نمایش برای استفاده شخصی در یادگیری ابزارها و تکنیک های جدید مورد استفاده قرار گرفته اند. شما می توانید به محض دسترسی به هر یک از این پیش نمایش ها انتقال کدهای خود به فریم ورک های جدید را آغاز کنید اما نباید فراموش کنید که آنها کامل نخواهند بود و در زمان انتشار نسخه نهایی تغییر پیدا خواهند کرد. کدهای شما به صورت ثابت باقی می مانند و هرگونه تغییر بیشتر به حالت رفع اشکال و مشکلات ابزار MAUI دات نت خواهد بود. ویژگی go live نیز می تواند در این جا به میزان زیادی به شما کمک کند چرا که به طور کامل پشتیبانی می شود. شرکت مایکروسافت می تواند تعامل بین کدهای خود و کدهای شما را به طور کامل ببیند و به ایجاد برخی از اصلاحات کمک کند که در مقابل سناریوهای دنیای واقعی آزمایش و تست می شوند.
نحوه استفاده از این ابزار در دات نت
اگر شما هم جز آن دسته از افرادی هستید که از Xamarin Forms استفاده کرده اید باید بدانید که استفاده از ابزار MAUI دات نت برای شما بسیار آشنا خواهد بود. این ابزار در واقع راهی برای میزبانی کنترل های خاص سیستم عامل و عناصر رابط کاربری در یک پایگاه داده مشخص را در اختیار شما قرار می دهد. بنابراین شما به جای استفاده از پروژه ها و راهکارهای مختلف برای دسکتاپ، موبایل و هر سیستم عامل دیگر می توانید تمام کدهای خود را در یک پروژه واحد قرار دهید و این اطمینان را نیز به شما می دهد که هیچ تفاوتی بین هر یک از این سیستم عامل هایی اجرا می شود وجود نخواهد داشت. البته باید دقت کنید که این جدای از اطمینانی است که در جهت یکسان بودن رابط کاربری و ظاهر اپلیکیشن ها به شما ارائه می دهد. با وجود این که Xamarin Forms تنها برای موبایل بودند ولی ابزار MAUI دات نت پشتیبانی از محیط های دسکتاپ را نیز برای شما فراهم می کند. علاوه بر این در این ابزار گزینه ای برای میزبانی از کد Blazor Razor در MAUI دات نت را در اختیار شما قرار می دهد که کنترل های وب ویو در آن تعبیه شده اند و شما می توانید از کامپوننت های Razor نیز در آن استفاده کنید.
ادغام کردن تمام پلتفرم ها
شما می توانید به ابزار MAUI دات نت به عنوان راهی برای یکپارچه سازی APIهای مخصوص دات نت نگاه کنید که این کار از طریق کد XML و سی شارپ صورت می گیرد و شما می توانید این کدها را یک بار بنویسید و در هر جایی آنها را اجرا کنید. نکته مهم در خصوص این ابزار این است که کدهای مخصوص پلتفرم را برای شما فراهم می کند. یکی از ویژگی های مهم MAUI دات نت این است که هم بالاتر از کدهای نیتیو و هم بالاتر از کتابخانه های کلاس پایه قرار می گیرد. در واقع کد شما APIهای MAUI را فراخوانی می کند و در ادامه نیز APIهای پلتفرم مورد نیاز فراخوانی می شوند و شما می توانید از آنها استفاده کنید. اگر شما هم ترجیح می دهید تا به ویژگی های نیتیو دسترسی داشته باشید می توانید مستقیما APIهای مخصوص پلتفرم را فراخوانی کنید.
نکاتی درباره این رویکرد برای ادغام پلتفرم ها
یکی از مهمترین مزایای این رویکرد این است که مجموعه ای پایه از ابزارهای کنترلی را در اختیار شما قرار می دهد که دقیقا مانند ابزارهایی است که در Xamarin Forms به شما ارائه می شد. علاوه بر این یک موتور layout نیز به شما ارائه می شود که به کدهای رابط کاربری شما اجازه می دهد بین دستگاه های مختلف مقیاس پذیر شوند و اندازه صفحه آنها هماهنگ شود. نکته مهم دیگری که در این جا وجود دارد این است که شما باید اطلاعاتی درباره قابلیت های دستگاه هدف خود داشته باشید و در همان زمان طراحی های رابط کاربری را نیز ارائه دهید که می توانند بین دو حالت landscape PC، Mac experiences و صفحه های portrait mobile جا به جا شوند.
ویژگی های دیگری که باید درباره MAUI دات نت بدانید
بخش عمده ای از ابزار MAUI دات نت دارای تجربه کاربری XAML آشنا است که دارای صفحه ای از توضیحات است و همینطور کدهایی دارد که تعاملات سایر بخش های اپلیکیشن شما را نیز مدیریت می کند. ابزار MAUI دات نت همچنین دارای مجموعه ای از APIها است که امکان دسترسی به ویژگی های دستگاه را نیز برای شما فراهم می کند. این ویژگی بسیار مهم راهکار رایجی را در اختیار شما قرار می دهد تا بتوانید با GPS و سایر سنسورهای موجود در دستگاه کار کنید و بتوانید به باتری دستگاه و همینطور وضعیت شبکه نیز دسترسی داشته باشید.
ساخت پروژه های MAUI دات نت
شما می توانید پروژه های MAUI دات نت را با رویکردی مشابه Xamarin Forms ایجاد کرده و از آنها استفاده کنید. یک پروژه خاص و منحصر به فرد تمام کدهای شما را نگهداری می کند و در ادامه کدهای مخصوص به هر پلتفرم را بر اساس پلتفرمی که در آن اجرا می شود ارائه می دهد. در واقع شما روی کدهای رایج خود در بدنه اصلی پروژه ای که دارید کار می کنید و در صورت نیاز از کدهای اختصاصی نیز در پروژه استفاده می کنید. به عنوان مثال شما می توانید مجموعه ای از کدهای پلتفرم را برای پشتیبانی از GPS در اختیار داشته باشید که دارای نسخه های مختلفی برای ویندوز و اندروید است و به شما اجازه می دهد تا بر اساس پلتفرمی که دارید این کدها را کامپایل و اجرا کنید. اپلیکیشنی که برای ویندوز ساخته اید از APIهای Windows GPS استفاده می کند و در عوض اپلیکیشنی که برای اندروید طراحی کرده اید نیز نسخه های مرتبط با اندروید را فراخوانی می کند. هر دو نسخه پلتفرم دارای متدهای یکسانی هستند که APIها را محصور کرده و دارای فراخوانی و نوع بازگشتی یکسانی نیز هستند.
ویژگی های جدیدی که به این ابزار اضافه شده است
MAUI دات نت پشتیبانی مستقیم مایکروسافت برای اندروید 5.0 و بالاتر، IOS 10 و بالاتر، ویندوز 1809 10و بالاتر و همینطور macOS 10.13 را اضافه کرده است. دقت داشته باشید که کد MacOS بسیار مشابه iOS و iPadOS است چرا که از ابزارهای macOS Catalyst که پیش از این منتشر شده است استفاده می کنند که به شما اجازه می دهد تا بتوانید اپلیکیشن های iPad را به ویندوز بیاورید، ویژگی های مربوط به دسکتاپ را به طور خودکار اضافه کنید و از بسیاری از APIهای اصلی و سرویس های مخصوص شرکت اپل نیز استفاده کنید. پشتیبانی از سامسونگ به MAUI دات نت اجازه می دهد تا به سادگی روی Tizen اجرا شده و فراموش نکنید که انجمن دات نت نیز در حال توسعه پشتیبانی از لینوکس است.
MAUI دات نت چه امکانات دیگری را در اختیار توسعه دهندگان قرار می دهد؟
در حال حاضر شما می توانید با استفاده از آخرین نسخه پیش نمایش ویژوال استودیو از MAUI دات نت استفاده کنید. در این ابزار یک قابلیت اشکال زدایی و پیدا کردن باگ و همینطور توسعه نرم افزار در اختیار شما قرار گرفته است که می توانید از آن استفاده کنید. بنابراین شما می توانید زمانی که یک اپلیکیشن در محیط توسعه آزمایشی در حال اجرا است تغییراتی را در محیط و رابط کاربری ایجاد کرده و بدون نیاز به Build مجدد و راه اندازی دوباره نتایج تغییرات را مشاهده کنید. این تکنیک می تواند به میزان زیادی در صرفه جویی در زمان توسعه دهندگان مفید و کاربردی باشد و این یکی از مهمترین ویژگی هایی است که در آخرین نسخه از دات نت یعنی دات نت 6 اضافه شده است.
شروع کدنویسی با استفاده از این ابزار
ساخت اولین اپلیکیشن در MAUI دات نت به اندازه کافی ساده و راحت است. با پیکربندی ویژوال استودیو برای پشتیبانی از قابلیت توسعه موبایل با دات نت به راحتی می توانید این کار را آغاز کنید. این قابلیت پشتیبانی از Xamarin و MAUI را نیز برای شما اضافه می کند و به همین علت نیز شما می توانید اپلیکیشن هایی که با استفاده از زامارین نوشته اید را به داخل این ابزار بیاورید یا این که به پشتیبانی از نسخه های قدیمی تر اپلیکیشن خود ادامه دهید. ویژوال استودیو در حال حاضر گزینه ای را برای ایجاد اپلیکیشن های دات نت با استفاده از MAUI اضافه کرده است که این رویکرد با استفاده از تکنیک های استاندارد دات نت یا فریم ورک Blazor به شما ارائه می شود.
ادامه کدنویسی با استفاده از MAUI دات نت
پس از آن که یک پروژه را برای خود ایجاد کردید MAUI دات نت به طور خودکار وابستگی ها را برای سیستم عامل های هدف شما مشخص و تعیین می کند. در ادامه شبیه ساز اندروید و همینطور SDK را نیز برای شما نصب و پیکربندی می کند. ارائه مجوز اپل به این معنی است که برای ساخت اپلیکیشن های IOS و macOS شما همچنان نیازمند یک مک خواهید بود که روی همان شبکه ای که کامپیوتر شخصی توسعه شما در حال اجرا شدن در آن است اجرا شود. البته این دستگاه باید دارای SDKهای دات نت نیز باشد که روی سیستم شما نصب شده اند و همچنین نسخه به روز Xcode نیز روی آنها وجود دارد.
حرکت شرکت مایکروسافت به سمت نسخه ای از دات نت که به صورت کراس پلتفرم به کاربران و توسعه دهندگان ارائه می شود ارائه ابزارهایی مانند MAUI را به میزان زیادی ساده تر کرده است. اگرچه کار کردن با زامارین در گذشته بسیار سودمند بود اما اگر شما در حال حاضر در حال ساخت اپلیکیشن های موبایل هستید منحنی یادگیری شما به میزان زیادی کوچک باقی می ماند. این مسئله زمانی شدت پیدا می کند که شما از آن به عنوان فریم ورکی برای ساخت اپلیکیشن های مخصوص ویندوز با استفاده از ابزار WinUI استفاده کنید.
نکات پایانی درباره این ابزار
این مسئله کاملا منطقی است که MAUI در دات نت را به عنوان پایه ای برای توسعه رابط کاربری گرافیکی دات نت در آینده در نظر بگیرید بدون این که مهم باشد که دقیقا قصد دارید چه سیستم عامل و پلتفرمی را به عنوان هدف اصلی خود قرار دهید. بله، امروز ممکن است شما تنها در حال ساخت یک اپلیکیشن اندروید در دات نت باشید ولی نباید فراموش کنید که ابزار فوق العاده کاربردی MAUI شرایطی را برای شما فراهم می کند که بتوانید با ایجاد حجم پایینی از تغییرات ساده آن کد را دریافت کرده و از آن در تمام پلتفرم هایی که این ابزار از آنها پشتیبانی می کند استفاده کنید. این مسئله می تواند به میزان زیادی باعث صرفه جویی در زمان توسعه دهندگان شود. علاوه بر این نباید فراموش کنید که این ویژگی کلیدی و بسیار مهم MAUI دات نت می تواند برای کسب و کارها و شرکت های بزرگ و کوچک نیز بسیار مفید باشد و باعث کاهش هزینه های مختلف در این شرکت ها شود.
- Asp.Net Core
- 2k بازدید
- 2 تشکر