۱ دی ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

رابط‌های کاربری متقابل پلتفرم با .NET MAUI «زنده می‌شوند».

رابط کاربری برنامه چند پلتفرمی دات نت تقریباً از راه رسیده است. برای شروع ساخت اپلیکیشن های چند پلتفرمی برای موبایل و دسکتاپ چه چیزی باید بدانید؟

رابط کاربری برنامه چند پلتفرمی دات نت تقریباً از راه رسیده است. برای شروع ساخت اپلیکیشن های چند پلتفرمی برای موبایل و دسکتاپ چه چیزی باید بدانید؟

بسیاری از چشم انداز فعلی دات نت مبتنی بر کار تیم های Mono و Xamarin است و نسخه ای از زمان اجرا دات نت را ارائه می دهد. به روز رسانی هسته دات نت اولین بخش پروژه بود: ابداع راهی برای اجرای کد شما در ویندوز، macOS، لینوکس، اندروید، iOS و غیره. اکنون زمان آن رسیده است که طرف تجربه کاربری یک به روز رسانی مشابه را دریافت کند. Win UI 3 و Windows App SDK ابزارهای رابط کاربری را برای برنامه‌های Windows و MAUI، رابط کاربری برنامه چندپلتفرمی، ابزارهایی را برای ساختن برنامه های چند پلتفرمی برای دسکتاپ و موبایل در اختیار شما قرار می دهد.

MAUI که در ابتدا برای عرضه به عنوان بخشی از موج انتشارات .NET 6 در نظر گرفته شده بود، ثابت کرده است که پروژه پیچیده‌تری نسبت به محدوده اولیه است. با این حال، تقریباً آماده است، با نامزد انتشار در حال حاضر در دسترس است، و در دسترس بودن عمومی انتظار می رود در حوالی زمان ساخت ۲۰۲۲. ورود نامزد انتشار یک نقطه عطف مهم است، زیرا این نکته در آن است. چرخه عمر توسعه نرم افزار که مایکروسافت چیزی را ارائه می دهد که آن را “مجوز برو لایو” می نامد.< /a>

زمان پخش زنده برای MAUI

تا این مرحله، نسخه‌های پیش‌نمایش برای استفاده شخصی برای یادگیری ابزارها و تکنیک‌های جدید در نظر گرفته شده‌اند. شما می‌توانید به محض رسیدن پیش‌نمایش‌ها، انتقال کد به چارچوب‌های جدید را شروع کنید، اما آنها کامل نخواهند شد و از نسخه به انتشار تغییر خواهند کرد. که با نامزدهای آزادی به پایان می رسد. کد ثابت است، و هر گونه تغییر بیشتر رفع اشکال خواهد بود. ویژگی “go live” در اینجا نیز کمک می کند، زیرا شامل پشتیبانی می شود. مایکروسافت می‌تواند تعاملات بین کد خود و کد شما را ببیند و به ایجاد اصلاحاتی کمک می‌کند که در برابر سناریوهای دنیای واقعی آزمایش می‌شوند.

Wasm: 5 چیزی که توسعه دهندگان باید دنبال کنند

اگر از فرم‌های Xamarin استفاده کرده‌اید، MAUI بسیار آشنا خواهد بود . این راهی برای میزبانی کنترل‌های خاص سیستم‌عامل و عناصر UI در یک پایگاه کد واحد است. به‌جای پروژه‌ها و راه‌حل‌های مختلف برای دسک‌تاپ، موبایل و هر سیستم‌عامل، همه کدهای شما در یک پروژه واحد قرار می‌گیرند، و این اطمینان را می‌دهد که هیچ تفاوتی بین برنامه‌ای که روی هر هدف اجرا می‌شود وجود ندارد – جدای از اطمینان از این که هر بیلد ظاهر و احساسی بومی دارد. کنترل های بومی در جایی که Xamarin Forms فقط موبایل بود، MAUI از محیط های دسکتاپ پشتیبانی می کند. حتی گزینه میزبانی کد Blazor Razor در MAUI، با کنترل‌های نمای وب تعبیه‌شده برای اجرای مؤلفه‌های Razor به صورت بومی در دستگاه مورد نظر شما.

به هم رساندن سکوها

شما می توانید MAUI را به عنوان راهی برای یکپارچه سازی API های دات نت مخصوص پلتفرم در نظر بگیرید تا کدهای C# و XAML یک بار نوشته شوند و در همه جا اجرا شوند، با گزینه ارائه کد مخصوص پلتفرم برای جلوگیری از کمترین معمول. رویکرد مخرج MAUI هم بالای کد بومی و هم بالای کتابخانه های کلاس پایه معمولی قرار دارد. کد شما API های MAUI را فراخوانی می کند، که سپس API های پلت فرم مورد نیاز را فراخوانی می کند. اگر ترجیح می‌دهید ویژگی‌های ویژه بومی را داشته باشید، می‌توانید مستقیماً با APIهای پلتفرم تماس بگیرید اگر پوشش MAUI ندارند.

این رویکرد مجموعه‌ای از کنترل‌های رایج را به شما ارائه می‌دهد، بسیار شبیه به مواردی که توسط Xamarin Forms استفاده می‌شود، با موتور طرح‌بندی که به کد UI اجازه می‌دهد بین عوامل مختلف شکل دستگاه و اندازه‌های صفحه نمایش مقیاس شود. مهم است که از قابلیت‌های دستگاه‌های مورد نظر خود آگاه باشید و در عین حال، طرح‌های رابط کاربری ارائه دهید که می‌تواند از تغییر بین تجربه‌های افقی PC و Mac و صفحه نمایش عمودی موبایل پشتیبانی کند.

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

React 18 با رندر همزمان، دسته‌بندی خودکار وارد می‌شود

ساخت پروژه های MAUI

پروژه های MAUI به روشی مشابه با رویکردی که Xamarin Forms معرفی کرد سازماندهی می شوند. یک پروژه واحد، همه کدهای شما را با هر پلتفرمی  نگهداری می کند -کد خاص سازماندهی شده توسط اهداف. شما روی کدهای رایج در بدنه اصلی پروژه خود کار می کنید و در صورت نیاز به کدهای تخصصی وارد می شوید. برای مثال، می‌توانید مجموعه‌ای از کدهای پلتفرم برای پشتیبانی از GPS، با نسخه‌های جداگانه کد برای ویندوز و اندروید که در زمان ساخت استفاده می‌شوند و بر اساس اهداف پلتفرم کامپایل شده‌اند، داشته باشید. برنامه ویندوز شما از API های GPS ویندوز استفاده می کند و نسخه اندروید نسخه های Android را فراخوانی می کند. هر دو نسخه پلتفرم یک روش خواهند بود و APIها را با ساختار فراخوانی و بازگشتی مشترک می‌پیچانند.

MAUI پشتیبانی مستقیم از Microsoft برای Android نسخه ۵.۰ و نسخه های بالاتر، iOS 10 و بالاتر، ویندوز ۱۰ ۱۸۰۹ و بالاتر و macOS 10.13. کد MacOS تقریباً مانند iOS (و iPadOS) خواهد بود زیرا از ابزارهای MacOS Catalyst اخیراً منتشر شده استفاده می کند که به شما امکان می دهد برنامه های iPad را به دسکتاپ بیاورید، ویژگی های دسکتاپ را به طور خودکار اضافه کنید و از بسیاری از API های اصلی و خدمات اپل پشتیبانی کنید. پشتیبانی اضافی سامسونگ به MAUI اجازه می دهد تا در Tizen اجرا شود و انجمن .NET در حال توسعه پشتیبانی از لینوکس است.

ارزش استفاده از MAUI با آخرین نسخه پیش‌نمایش ویژوال استودیو را دارد که برای بارگذاری مجدد داغ NET و XAML پشتیبانی می‌کند. این یک ابزار اشکال‌زدایی و توسعه مهم است، بنابراین می‌توانید در زمانی که یک برنامه در محیط آزمایشی در حال اجرا است، تغییراتی در رابط کاربری و کد برنامه ایجاد کنید و بدون نیاز به بازسازی و راه‌اندازی مجدد، تغییرات را بارگیری مجدد کنید. این تکنیک می‌تواند در زمان زیادی صرفه‌جویی کند، و خوب است که در آخرین لحظه آن را به .NET 6 تبدیل کرد (پس از شکایت‌های بسیاری از توسعه‌دهندگان در مورد حذف آن از پیش‌نمایش‌ها در اواخر چرخه توسعه).

Visual Studio Code 1.76 در قابلیت استفاده، pytest می درخشد

اکنون کدنویسی را با MAUI شروع کنید

ساخت اولین برنامه به اندازه کافی آسان است. با پیکربندی ویژوال استودیو برای پشتیبانی از توسعه موبایل با دات نت شروع کنید. این کار برای Xamarin و MAUI پشتیبانی می‌کند، بنابراین می‌توانید برنامه‌های Xamarin موجود را به MAUI بیاورید یا به پشتیبانی از نسخه‌های قدیمی‌تر ادامه دهید. ویژوال استودیو اکنون گزینه ای برای ایجاد برنامه های .NET MAUI با استفاده از تکنیک های استاندارد .NET یا فریم ورک Blazor ارائه می دهد.

هنگامی که پروژه ای را ایجاد کردید، MAUI به طور خودکار وابستگی هایی را برای سیستم عامل های هدف تنظیم می کند و شبیه ساز Android و SDK را نصب و پیکربندی می کند. مجوز اپل به این معنی است که برای ساخت برنامه‌های iOS و macOS، با نصب SDK.NET مناسب همراه با نسخه به‌روز Xcode، همچنان به یک مک که در همان شبکه رایانه شخصی توسعه‌دهنده خود اجرا می‌شود، نیاز دارید.

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

منطقی است که MAUI را به‌عنوان پایه‌ای برای توسعه GUI .NET آینده خود در نظر بگیرید، مهم نیست که چه چیزی را هدف قرار می‌دهید. بله، ممکن است امروز فقط در حال ساخت یک برنامه Android .NET باشید، اما MAUI گرفتن آن کد و استفاده از آن را در تمام پلتفرم های پشتیبانی شده با تغییرات بسیار کمی ساده می کند. این یک پیروزی بزرگ برای کار بسیار کم است.