پرووید
منو

آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms

زبان: فارسیمدرس: پروویدسطح: پیشرفتهمدت زمان: 06:05:04تعداد ویدئوها: 118فایل های پروژه: ناموجود
قیمت:۵٬۱۹۹٬۰۰۰ تومان
این آموزش بخشی از پکیج کامل آموزش برنامه نویسی در Xamarin.Forms پیشرفته است که می توانید از تمامی آموزش های آن دیدن کنید.

آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم.

Xamarin چیست؟

زامارین (Xamarin) یک ابزار قدرتمند برای برنامه نویسی اپلیکیشن های چندسکویی موبایل است که به کمک زبان سی شارپ و نرم افزار ویژوال استدیو می توانید اپلیکیشن های Native برای سیستم عامل های Android، iOS و Windows Phone بسازید. Xamarin بهترین گزینه برای برنامه نویسان دات نت و توسعه دهندگانی است که قصد دارند نسخه بومی (Native) اندروید، آی او اس و ویندوز فون اپلیکیشن های مورد نیاز خود را با یک بار برنامه نویسی با بالاترین کیفیت تولید کنند.

Xamarin.Forms چیست؟

Xamarin.Forms در سال 2014 راه اندازی شد،  و پلت فرمی است که بر روی Xamarin اجرا می شود، در واقع به صورت یک کیت از ابزار UI بوجود آمد که به برنامه نویسان اجازه می دهد به راحتی یک رابط کاربری مشترک در اندروید، iOS و ویندوز فون را ایجاد کنند. Xamarin.Forms به زبان #C نوشته شده و امکان ایجاد یک نمونه سازی سریع از برنامه های کاربردی پیچیده را فراهم کرده است. برنامه های کاربردی Xamarin.Form برنامه های بومی هستند، و محدودیت های Toolkit ها را ندارد.

الگوی MVVM در Xamarin.Forms چگونه به ساختار برنامه کمک می کند؟

MVVM مخفف Model-View-ViewModel است و الگویی برای جداسازی داده‌ها، رابط کاربری و منطق مرتبط با نمایش آن‌ها محسوب می‌شود. در این ساختار، View مسئول نمایش اطلاعات و دریافت تعاملات کاربر است، Model داده‌ها و قواعد مرتبط با آن‌ها را نمایندگی می‌کند و ViewModel اطلاعات و عملیات مورد نیاز View را فراهم می‌سازد. این تفکیک کمک می‌کند منطق برنامه کمتر به اجزای بصری وابسته باشد و تغییرات رابط کاربری با اثر کمتری بر سایر بخش‌ها انجام شوند.

Subscribe کردن به یک Message - نمونه ای از بخش ارتباط بین مولفه های Loosely Coupled برنامه در آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms
نمونه ای از بخش «ارتباط بین مولفه های Loosely Coupled برنامه» در آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms

در Xamarin.Forms، استفاده از MVVM می‌تواند کدهای پشت صفحه را ساده‌تر کند و مدیریت داده‌های رابط کاربری را به شکل منظم‌تری انجام دهد. برای مثال، به‌جای قرار دادن تمام منطق مربوط به یک فرم در صفحه، می‌توان داده‌های فرم و عملیات مرتبط را در ViewModel نگهداری کرد. این ساختار همچنین زمینه مناسبی برای استفاده از Data Binding و Command فراهم می‌کند. درک درست MVVM به توسعه دهنده کمک می‌کند برنامه‌های چندصفحه‌ای را با مسئولیت‌های مشخص‌تر و قابلیت نگهداری بهتر طراحی کند.

Dependency Injection و ارتباط میان اجزای کم وابسته چیست؟

Dependency Injection روشی برای تأمین وابستگی‌های یک کلاس از بیرون آن کلاس است. به‌جای اینکه هر کلاس وابستگی‌های مورد نیاز خود را مستقیماً بسازد، این وابستگی‌ها از طریق سازوکاری مشخص به آن ارائه می‌شوند. برای مثال، یک ViewModel می‌تواند سرویسی برای دریافت اطلاعات درخواست کند، بدون اینکه خودش مسئول ساخت آن سرویس باشد. این روش مدیریت ساخت اشیا را منظم‌تر می‌کند و امکان جایگزین کردن پیاده سازی‌های مختلف را در شرایط متفاوت فراهم می‌سازد.

ارتباط کم‌وابسته یا Loosely Coupled به این معناست که اجزای برنامه برای کار کردن به جزئیات داخلی یکدیگر وابستگی زیادی نداشته باشند. تعریف قراردادهای روشن و استفاده از Dependency Injection می‌تواند به رسیدن به این هدف کمک کند. در چنین ساختاری، تغییر پیاده سازی یک سرویس لزوماً به تغییر تمام کلاس‌هایی که از آن استفاده می‌کنند منجر نمی‌شود. این شیوه برای پروژه‌های بزرگ‌تر اهمیت دارد، زیرا تعداد اجزا و ارتباط میان آن‌ها با گذشت زمان افزایش می‌یابد و مدیریت وابستگی‌ها دشوارتر می‌شود.

مدیریت Validation و Authentication در برنامه های موبایل

Validation به بررسی معتبر بودن داده‌های ورودی گفته می‌شود. برای مثال، برنامه می‌تواند بررسی کند که فیلدهای ضروری تکمیل شده‌اند یا مقدار واردشده با قالب مورد انتظار مطابقت دارد. انجام اعتبارسنجی مناسب به جلوگیری از خطاهای قابل پیشگیری و ارائه بازخورد روشن به کاربر کمک می‌کند. با این حال، اعتبارسنجی در رابط کاربری نباید تنها لایه دفاعی برنامه باشد؛ داده‌های حساس یا عملیات مهم باید در سمت سرویس نیز بررسی شوند، زیرا کاربران می‌توانند درخواست‌ها را خارج از رابط معمول برنامه ارسال کنند.

مبحث Authorization - نمونه ای از بخش Authentication و Authorization در آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms
نمونه ای از بخش «Authentication و Authorization» در آموزش مباحث پیشرفته و حرفه ای در Xamarin.Forms

Authentication و Authorization دو مفهوم مرتبط اما متفاوت هستند. Authentication مشخص می‌کند کاربر چه کسی است، در حالی که Authorization تعیین می‌کند آن کاربر اجازه انجام چه عملیاتی را دارد. در اپلیکیشن‌های Xamarin.Forms که به سرویس‌های آنلاین متصل می‌شوند، این مفاهیم برای کنترل دسترسی به اطلاعات و قابلیت‌های محافظت‌شده اهمیت دارند. طراحی درست این بخش‌ها باید با توجه به شیوه احراز هویت سرویس، مدیریت اعتبارنامه‌ها و سطح دسترسی مورد نیاز انجام شود. درک این تفاوت‌ها به توسعه دهنده کمک می‌کند جریان‌های ورود و دسترسی را دقیق‌تر پیاده سازی کند.

دسترسی به داده های Remote و Unit Testing در Xamarin.Forms

بسیاری از اپلیکیشن‌های موبایل برای دریافت یا ارسال اطلاعات به سرویس‌های آنلاین متصل می‌شوند. دسترسی به داده‌های Remote به برنامه اجازه می‌دهد اطلاعاتی مانند مشخصات کاربر یا محتوای به‌روز را از یک سرویس دریافت کند. در این حالت باید شرایطی مانند خطای ارتباط، پاسخ نامعتبر و تأخیر شبکه در نظر گرفته شوند. جدا کردن منطق ارتباط با سرویس از رابط کاربری، به مدیریت بهتر این وضعیت‌ها کمک می‌کند و امکان تغییر روش دریافت داده را بدون بازنویسی گسترده صفحه‌ها فراهم می‌سازد.

Unit Testing برای بررسی رفتار واحدهای کوچک برنامه، مانند یک متد یا کلاس، به کار می‌رود. در برنامه‌های مبتنی بر MVVM و Dependency Injection، جدا کردن منطق از اجزای رابط کاربری می‌تواند آزمایش این واحدها را آسان‌تر کند. برای مثال، می‌توان رفتار یک ViewModel را با استفاده از سرویس جایگزین بررسی کرد، بدون اینکه برای هر آزمون برنامه را روی دستگاه موبایل اجرا کرد. این روش به شناسایی خطاها و بررسی رفتار مورد انتظار کمک می‌کند و بخشی از فرایند توسعه نرم افزار قابل نگهداری به شمار می‌رود.

سرفصل مطالب آموزش ویدئویی مباحث پیشرفته و حرفه ای در Xamarin.Forms

فصل اول: MVVM
  • نکات تخصصی در مورد View
  • نکات تخصصی در مورد ViewModel
  • نکات تخصص در مورد Model
  • تعریف View Model با روش Declarative
  • تعریف View Model با روش Programmatic
  • تعریف یک View به صورت یک Data Template
  • استفاده از View Model Locator برای ساخت خودکار View Model برای View
  • نکات تخصصی در مورد پیاده سازی اینترفیس INotifyPropertyChanged
  • استفاده از Command ها و Behavior ها برای ارتباط بین View و View Model
  • پیاده سازی Command ها
  • پیاده سازی Behavior ها
  • جمع بندی
فصل دوم: Dependency Injection
  • معرفی Dependency Injection
  • نکات تخصصی در مورد Registration
  • نکات تخصصی در مورد Resolution
  • مدیریت طول عمر اشیا Resolved شده
  • جمع بندی
فصل سوم: ارتباط بین مولفه های Loosely Coupled برنامه
  • معرفی MessagingCenter
  • تعریف یک Message
  • انتشار یک Message
  • Subscribe کردن به یک Message
  • Unsubscribe کردن به یک Message
  • جمع بندی
فصل چهارم: Navigation
  • انجام Navigation بین Page ها
  • مدیریت درخواست های Navigation
  • انجام Navigation در زمان اجرای برنامه
  • پاس دادن پارامتر در Navigation
  • انجام Navigation با استفاده از Behavior ها
  • تایید و یا کنسل کردن Navigation
  • جمع بندی
فصل پنجم: Validation
  • تعریف قوانین Validation
  • افزودن قوانین Validation به یک Property
  • Trigger کردن Validation ها به صورت دستی
  • Trigger کردن Validation ها در زمان تغییر یک Property
  • نمایش دادن Error های Validation
  • رنگی کردن کنترل در زمان ورود داده های غیر معتبر
  • نشان دادن پیام های Error
  • جمع بندی
فصل ششم: مدیریت Configuration
  • ساختن و تنظیم کردن Class
  • افزودن Setting
  • استفاده از Data Binding در User Setting
  • جمع بندی
  • فصل هفتم: Containerized Microservices
  • معرفی مبحث Microservice
  • معرفی مبحث Containerization
  • ارتباطات بین Client و Microservice ها
  • ارتباط بین Microservice ها
  • جمع بندی
فصل هشتم: Authentication و Authorization
  • استفاده از IndentityServer 4 برای صادر کردن Bearer Token ها
  • افزودن IdentityServer به Web Application
  • پیکربندی IdentityServer
  • انجام Authentication
  • مبحث Authorization
  • پیکربندی IdentityServer برای انجام Authorization
  • انجام درخواست دسترسی به API
  • جمع بندی
فصل نهم: دسترسی به داده های Remote
  • معرفی Representational State Transfer
  • استفاده از RESTful API
  • انجام Web Request
  • کش کردن داده ها
  • مدیریت Data Expiration
  • کش کردن عکس ها
  • افزایش Resilience
  • الگوی Retry
  • الگوی Circuit Breaker
  • جمع بندی
فصل دهم: Unit Testing
  • مبحث Dependency Injection در رابطه با Unit Testing
  • تست کردن برنامه های MVVM
  • تست کردن عمیات Asynchronous
  • تست کردن پیاده سازی های INotifyPropertyChanged
  • تست کردن ارتباطات مبتنی بر Message
  • تست کردن Exception Handling
  • تست کردن Validation
جمع بندی
دیدگاه کاربران

دیدگاه ها

برای ثبت دیدگاه ابتدا وارد حساب کاربری شوید.
هنوز دیدگاهی برای این محصول تایید نشده است.