
آموزش ساخت کنترل های سفارشی Custom Control در Xamarin.Forms
آموزش ساخت کنترل های سفارشی Custom Control در Xamarin.Forms یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی ساختن Custom Control ها در Xamarin.Forms است که با نام اصلی Creating Custom Controls in Xamarin.Forms از شرکت Pluralsight منتشر شده است.
Xamarin.Forms چیست؟
Xamarin.Forms در سال 2014 راه اندازی شد، و پلت فرمی است که بر روی Xamarin اجرا می شود، در واقع به صورت یک کیت از ابزار UI بوجود آمد که به برنامه نویسان اجازه می دهد به راحتی یک رابط کاربری مشترک در اندروید، iOS و ویندوز فون را ایجاد کنند. Xamarin.Forms به زبان سی شارپ نوشته شده و امکان ایجاد یک نمونه سازی سریع از برنامه های کاربردی پیچیده را فراهم کرده است. برنامه های کاربردی Xamarin.Form برنامه های بومی هستند، و محدودیت های Toolkit ها را ندارد. به دوستان مبتدی توصیه می کنیم که از آموزش شروع به کار Xamarin.Forms استفاده کنند.

اپلیکیشن هایی که با استفاده از Xamarin.Forms نوشته شده اند، قادر هستند از هر یک از ویژگی های API و یا یک پلت فرم پایه ، مانند CoreMotion، PassKit و StoreKit در iOS؛ NFC و Google Play روی آندروید، Tiles و ویندوز فون، استفاده کنند. این بدان معنی است که می توانید اپلیکیشن هایی ایجاد کنید که شامل بخش هایی از رابط کاربری خودتان با Xamarin.Forms باشد، در حالی که بخش هایی از ابزار toolkit را نیز دارد. اپلیکیشن های Xamarin.Forms شبیه به معماری اپلیکیشن های multiplatform سنتی با معمول ترین شیوه برای قابل حمل بودن کتابخانه ها یا پروژه های مشترک ایجاد می شوند. و بعد اپلیکیشن هایی برای پلت فرم های ویژه ایجاد می شوند که کدهای مشترک را استفاده می کنند.
ساخت Custom Control در Xamarin.Forms چگونه انجام میشود؟
Custom Control در Xamarin.Forms به توسعهدهنده اجازه میدهد کنترلهایی متناسب با نیازهای خاص رابط کاربری ایجاد کند؛ بهویژه زمانی که کنترلهای آماده پاسخگوی تمام نیازهای برنامه نیستند. با ساخت کنترل سفارشی میتوان رفتار یا ظاهر یک جزء رابط کاربری را توسعه داد و آن را به شکلی طراحی کرد که در بخشهای مختلف برنامه قابل استفاده باشد. این روش به سازماندهی رابط کاربری کمک میکند و امکان جداسازی رفتارهای اختصاصی از سایر بخشهای برنامه را فراهم میسازد.
در این دوره پیشرفته، ساخت Custom Controlهای ساده و توسعه پیادهسازی آنها بررسی میشود. آشنایی با این مباحث برای برنامهنویسانی مفید است که با Xamarin.Forms کار کردهاند و اکنون به انعطاف بیشتری در طراحی رابط کاربری نیاز دارند. درک نحوه ساخت و توسعه کنترلهای سفارشی به شما کمک میکند اجزای رابط را متناسب با نیاز پروژه طراحی کنید و از تکرار پیادهسازی رفتارهای مشابه در بخشهای مختلف برنامه بکاهید.
Custom Renderer در Xamarin.Forms چیست؟
در Xamarin.Forms، رابط کاربری میتواند با استفاده از یک ساختار مشترک تعریف شود، اما نمایش و رفتار برخی کنترلها به امکانات پلتفرم مقصد وابسته است. Custom Renderer امکان کنترل بیشتر بر نحوه نمایش یا پیادهسازی یک کنترل در پلتفرم مشخص را فراهم میکند. این قابلیت زمانی اهمیت دارد که رفتار پیشفرض یک کنترل برای نیازهای برنامه کافی نباشد یا توسعهدهنده بخواهد از ویژگیهای خاص پلتفرم در کنار ساختار مشترک Xamarin.Forms استفاده کند.
در این آموزش، پیادهسازی Rendering پیشرفته در کنار ساخت Custom Control بررسی میشود. این مباحث به توسعهدهنده کمک میکنند رابطه میان کنترلهای مشترک و پیادهسازی وابسته به پلتفرم را بهتر درک کند. شناخت این سازوکار برای برنامههایی مفید است که نیازمند رابط کاربری سفارشی هستند و باید روی پلتفرمهای مختلف رفتار مناسبی داشته باشند. این موضوع همچنین در تصمیمگیری درباره محل پیادهسازی قابلیتهای اختصاصی هر پلتفرم اهمیت دارد.
استفاده از Markup Extension در XAML
XAML زبانی نشانهگذاریشده برای تعریف ساختار رابط کاربری در فناوریهای مختلف است و در Xamarin.Forms نیز برای توصیف عناصر بصری و تنظیم ویژگیهای آنها به کار میرود. Markup Extensionها امکان ارائه مقدار یا رفتارهای مشخص را هنگام تعریف ویژگیها در XAML فراهم میکنند. استفاده از آنها میتواند روش تعریف برخی مقادیر و تنظیمات رابط کاربری را انعطافپذیرتر کند و به توسعهدهنده اجازه دهد قابلیتهای بیشتری را در ساختار توصیفی رابط پیادهسازی کند.
در این دوره، توسعه XAML با استفاده از Markup Extensionها در کنار ساخت کنترلهای سفارشی مطرح میشود. این موضوع برای برنامهنویسانی مناسب است که میخواهند از امکانات XAML فراتر از تعریف ساده عناصر رابط کاربری استفاده کنند. آشنایی با این قابلیت به درک بهتر نحوه اتصال تنظیمات و منطق موردنیاز رابط کمک میکند و میتواند هنگام طراحی کنترلهای قابل استفاده مجدد، ساختاری منظمتر در اختیار توسعهدهنده قرار دهد.
دسترسی به Platform Serviceها در Xamarin.Forms
اپلیکیشنهای چندسکویی ممکن است به قابلیتهایی نیاز داشته باشند که مستقیماً به سیستمعامل وابستهاند. Platform Serviceها راهی برای دسترسی به چنین امکاناتی از بخشهای مشترک برنامه فراهم میکنند و میتوانند ارتباط میان منطق مشترک و قابلیتهای اختصاصی پلتفرم را سازماندهی کنند. شناخت این سازوکار زمانی اهمیت دارد که توسعهدهنده بخواهد رابط یا منطق برنامه را در Xamarin.Forms حفظ کند، اما برای اجرای برخی عملیات به امکانات ویژه Android یا iOS دسترسی داشته باشد.
در این آموزش، دسترسی به Platform Serviceها در کنار توسعه کنترلهای سفارشی بررسی میشود. این مباحث برای توسعهدهندگان پیشرفتهای مناسب است که با ساختار پایه Xamarin.Forms آشنا هستند و میخواهند برنامههایی متناسبتر با نیازهای پلتفرم مقصد بسازند. درک ارتباط میان Custom Control، Rendering و سرویسهای پلتفرمی به انتخاب روش مناسب برای پیادهسازی قابلیتهای اختصاصی کمک میکند و دید جامعتری از توسعه رابط کاربری چندسکویی ارائه میدهد.
سرفصل مطالب آموزش ویدئویی ساختن Custom Control ها در Xamarin.Forms
فصل اول: مقدمه
- مقدمه
فصل دوم: ساختن Custom Control های ساده
- مقدمه بررسی عملی روال ساختن Custom Control های ساده جمع بندی
فصل سوم: پیاده سازی Rendering پیشرفته
- مقدمه
- اضافه کردن Data Binding به Custom Control ها
- Draw کردن Custom Control ها در iOS
- Draw کردن Custom Control ها در اندروید
- جمع بندی
فصل چهارم: Extend کردن XAML با Markup Extension ها
- مقدمه بررسی عملی روال ساختن Markup Extension ها جمع بندی
فصل پنجم: دسترسی پیدا کردن به Platform Service ها
- مقدمه استفاده از Social Framework در iOS جمع بندی
فصل ششم: جمع بندی و قدم های بعدی
- جمع بندی







