آموزش قابلیت های جدید .NET 9 MAUI برای توسعه اپلیکیشن های چندسکویی
آموزش قابلیت های جدید .NET 9 MAUI برای توسعه اپلیکیشن های چندسکویی با عنوان اصلی .NET 9 Maui Enhanced Features for Cross-Platform Development یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. در این دوره با قابلیت ها و تغییرات جدید .NET 9 و .NET MAUI آشنا می شوید و یاد می گیرید چگونه از کنترل های جدید رابط کاربری، امکانات پیشرفته C# 13 و بهبودهای مربوط به عملکرد و ساختار اپلیکیشن ها استفاده کنید. همچنین نحوه به روزرسانی پروژه های موجود به .NET 9 و نکات مهم مربوط به پلتفرم های مختلف را بررسی خواهید کرد.
.NET MAUI چیست و چه قابلیت هایی در .NET 9 به آن اضافه شده است؟
.NET MAUI یک فریم ورک چندسکویی برای توسعه اپلیکیشن های بومی با استفاده از C# و .NET است. با کمک این فریم ورک می توانید اپلیکیشن هایی برای پلتفرم هایی مانند Android، iOS، macOS و Windows توسعه دهید و بخش زیادی از کد و منطق برنامه را بین این پلتفرم ها به اشتراک بگذارید. در نسخه .NET 9 امکانات جدیدی به این فریم ورک اضافه شده و برخی از کنترل ها و رفتارهای قبلی آن نیز بهبود پیدا کرده اند.
در این آموزش با تغییرات مهم .NET MAUI در نسخه 9 آشنا می شوید و نحوه استفاده از کنترل هایی مانند HybridWebView را یاد می گیرید. همچنین بررسی می کنید که چگونه می توان از C# برای فراخوانی JavaScript و برعکس استفاده کرد. علاوه بر این، تغییرات مربوط به Titlebar در Windows، کنترل های CollectionView و CarouselView در دستگاه های Apple، ورودی SoftKeyboard و رویدادهای جدید کنترل هایی مانند TimePicker و WebView را بررسی خواهید کرد.
قابلیت های جدید کنترل های رابط کاربری در .NET MAUI
کنترل های رابط کاربری نقش مهمی در تجربه کاربری اپلیکیشن های چندسکویی دارند. در .NET 9 برخی امکانات جدید و تغییرات کاربردی در این بخش ارائه شده است که به توسعه دهندگان اجازه می دهد تعاملات بهتری میان اجزای مختلف برنامه ایجاد کنند. برای مثال، HybridWebView امکان نمایش محتوای مبتنی بر Web را در اپلیکیشن MAUI فراهم می کند و ارتباط میان JavaScript و کدهای C# را امکان پذیر می سازد.

در ادامه با تغییرات دیگری مانند سفارشی سازی Titlebar در Windows و بهبود رفتار BlazorWebView آشنا می شوید. همچنین نحوه استفاده از قابلیت های مرتبط با CollectionView و CarouselView در دستگاه های Apple، مدیریت ورودی SoftKeyboard و تنظیم نحوه نمایش متن با Text Justification را یاد می گیرید. آشنایی با رویدادهایی مانند TimeSelected و ProcessTerminated نیز به شما کمک می کند تعاملات و رفتارهای مختلف کنترل ها را بهتر مدیریت کنید.
تغییرات رابط کاربری و مدیریت پنجره ها در .NET MAUI 9
علاوه بر کنترل های جدید، .NET 9 تغییراتی در ساختار کلی رابط کاربری و نحوه مدیریت بخش های مختلف اپلیکیشن ایجاد کرده است. یکی از موضوعات مهم در این نسخه، استفاده از Compiled Bindings در کدهای C# و فایل های XAML است. این قابلیت به توسعه دهندگان کمک می کند Bindingهای برنامه را به شکل کامپایل شده تعریف کنند و از مزایای بررسی نوع داده ها در زمان کامپایل بهره ببرند.
در این بخش همچنین با مفهوم Handler Disconnection و نحوه مدیریت اتصال و جداسازی Handlerها آشنا می شوید. سپس پشتیبانی از Multi-window را بررسی می کنید که امکان مدیریت چند پنجره در یک اپلیکیشن را فراهم می کند. در ادامه یاد می گیرید چگونه یک اپلیکیشن را برای Native Embedding آماده کنید و قابلیت Native Embedding را در یک اپلیکیشن iOS پیاده سازی نمایید.
TrimMode در .NET 9 چیست و چه کاربردی دارد؟
TrimMode یکی از موضوعات مهم در بهینه سازی اپلیکیشن های مبتنی بر .NET است. فرآیند Trimming با حذف بخش هایی از کد و اسمبلی های غیرضروری، به کاهش حجم خروجی نهایی برنامه کمک می کند. البته استفاده از این قابلیت نیازمند شناخت محدودیت ها و شرایط آن است؛ زیرا برخی بخش های برنامه ممکن است در زمان اجرا به کدهایی وابسته باشند که ابزار Trimming نتواند وابستگی آن ها را به صورت مستقیم تشخیص دهد.
در این قسمت ابتدا با مفهوم TrimMode و نحوه فعال سازی و آزمایش آن آشنا می شوید. سپس محدودیت ها، Feature Switches و مشکلات احتمالی مربوط به بارگذاری XAML در زمان اجرا را بررسی می کنید. همچنین تأثیر TrimMode بر فرآیند Ahead-of-Time یا AOT Compilation در پلتفرم های iOS و macOS را یاد می گیرید تا بتوانید هنگام بهینه سازی اپلیکیشن، تصمیم های فنی مناسب تری بگیرید.
قابلیت های جدید C# 13 در .NET 9
همراه با انتشار .NET 9، نسخه C# 13 نیز قابلیت های جدیدی را در اختیار برنامه نویسان قرار می دهد. این تغییرات شامل بهبودهای زبان در زمینه مدیریت داده ها، کار با انواع داده و ساختارهای برنامه نویسی است. برای مثال، Params Collections امکان استفاده انعطاف پذیرتر از مجموعه پارامترها را فراهم می کند و نوع جدید Lock نیز با هدف بهبود نحوه مدیریت همزمانی و عملیات قفل گذاری معرفی شده است.

در ادامه با قابلیت هایی مانند Escape Sequence جدید، بهبود Method Group Natural Type و دسترسی Implicit Indexer در Object Initializer آشنا می شوید. همچنین تغییرات مربوط به Ref Locals، Unsafe Contexts، Ref Struct و پیاده سازی Interface توسط این نوع داده ها را بررسی خواهید کرد. Partial Properties و Indexers و همچنین Overload Resolution Priority از دیگر قابلیت هایی هستند که در این بخش یاد می گیرید و با کاربرد آن ها در کدنویسی C# آشنا می شوید.
چگونه پروژه های موجود را به .NET 9 ارتقا دهیم؟
ارتقای پروژه های موجود به نسخه جدید .NET فقط به تغییر شماره نسخه در فایل پروژه محدود نمی شود. بسته به پلتفرم هدف، ممکن است لازم باشد تنظیمات ساخت، وابستگی ها و نحوه مدیریت منابع برنامه نیز تغییر کنند. در پروژه های .NET MAUI این موضوع اهمیت بیشتری دارد؛ زیرا هر پلتفرم مانند Android و iOS تنظیمات و نیازمندی های مخصوص به خود را دارد.
در این بخش با تغییرات مرتبط با Android Asset Packs، معماری های 32 بیتی Android و Android Marshal Methods آشنا می شوید. همچنین موضوع Multitarget Bindings در iOS و تغییرات XAML Compiler را بررسی می کنید. سپس طی یک تمرین عملی، نحوه به روزرسانی یک پروژه موجود به .NET 9 را انجام می دهید و با ملاحظات تکمیلی این فرآیند آشنا می شوید تا بتوانید پروژه های قبلی خود را با اطمینان بیشتری به نسخه جدید منتقل کنید.
این آموزش .NET 9 MAUI برای چه کسانی مناسب است؟
این دوره برای توسعه دهندگانی مناسب است که با C# و .NET MAUI آشنایی دارند و می خواهند دانش خود را درباره قابلیت های جدید نسخه .NET 9 به روز کنند. اگر در حال توسعه اپلیکیشن های چندسکویی برای Android، iOS، macOS یا Windows هستید، آشنایی با تغییرات این نسخه می تواند به شما کمک کند از امکانات جدید فریم ورک بهتر استفاده کنید و ساختار پروژه های خود را با قابلیت های جدید هماهنگ سازید.
همچنین برنامه نویسان C# که قصد دارند با ویژگی های جدید C# 13، مفاهیم Trimming و AOT Compilation و روش های به روزرسانی پروژه های MAUI آشنا شوند، می توانند از مباحث این دوره بهره ببرند. در پایان آموزش، با شناخت بهتری از تغییرات .NET 9 می توانید آموخته های خود را در پروژه های واقعی به کار بگیرید و قابلیت های جدید این نسخه را در توسعه اپلیکیشن های چندسکویی آزمایش کنید.
سرفصل مطالب آموزش ویدئویی قابلیت های جدید .NET 9 MAUI برای توسعه اپلیکیشن های چندسکویی
فصل اول: مقدمه
- چرا آشنایی با قابلیت های جدید اهمیت دارد؟
- چه ابزارهایی باید نصب شده باشند؟
- نحوه استفاده از فایل های تمرین
فصل دوم: کنترل های .NET 9 و .NET MAUI
- معرفی تغییرات این به روزرسانی
- کنترل HybridWebView
- فراخوانی JavaScript از C# با استفاده از HybridWebView
- فراخوانی JavaScript و C# با استفاده از HybridWebView
- Titlebar در Windows
- سفارشی سازی Titlebar در Windows
- تغییرات رفتار BlazorWebView
- CollectionView و CarouselView در دستگاه های Apple
- ورودی SoftKeyboard
- تراز کردن متن
- رویداد TimeSelected در TimePicker
- رویداد ProcessTerminated در WebView
فصل سوم: تغییرات کلی رابط کاربری در .NET 9 و .NET MAUI
- Compiled Bindings در کد
- Compiled Bindings در XAML
- قطع اتصال Handler
- پشتیبانی از چند پنجره
- آماده سازی اپلیکیشن برای Native Embedding
- پیاده سازی Native Embedding در اپلیکیشن iOS
فصل چهارم: TrimMode در .NET 9
- TrimMode چیست؟
- آزمایش TrimMode
- محدودیت های TrimMode
- Feature Switches در TrimMode
- مشکلات بارگذاری XAML در زمان اجرا
- TrimMode و AOT Compilation در iOS و macOS
فصل پنجم: قابلیت های جدید زبان C# 13 در .NET 9
- مجموعه های Params
- نوع جدید Lock و معناشناسی آن
- Escape Sequence جدید e
- بهبود Natural Type در Method Group
- دسترسی ضمنی به Indexer در Object Initializerها
- امکان استفاده از Ref Locals و Unsafe Contexts در Iteratorها و متدهای Async
- امکان پیاده سازی Interface توسط انواع Ref Struct
- امکان استفاده از انواع Ref Struct به عنوان آرگومان برای پارامترهای نوع در Genericها
- Partial Properties و Indexers
- اولویت بندی در Overload Resolution
فصل ششم: به روزرسانی پروژه های موجود به .NET 9
- Asset Packهای Android
- معماری های ۳۲ بیتی Android
- Marshal Methods در Android
- Multitarget Bindings در iOS
- تغییرات XAML Compiler
- به روزرسانی یک پروژه موجود: تمرین عملی
- به روزرسانی یک پروژه موجود: ملاحظات تکمیلی
فصل هفتم: جمع بندی
- ایده هایی برای تمرین و استفاده از آموخته های این دوره








