
آموزش ساخت برنامه های اندروید و iOS با Xamarin در سی شارپ سری دوم
آموزش ساخت برنامه های اندروید و iOS با Xamarin در سی شارپ سری دوم یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی ساخت برنامه های Cross-Platform اندروید و iOS با Xamarin، ویژوال استادیو و در سی شارپ قسمت دوم است که با نام اصلی Building Cross-Platform iOS/Android Apps with Xamarin, Visual Studio, and C# - Part 2 از شرکت Pluralsight منتشر شده است.
Xamarin چیست؟
زامارین (Xamarin) یک ابزار قدرتمند برای برنامه نویسی اپلیکیشن های چندسکویی موبایل است که به کمک زبان سی شارپ و نرم افزار ویژوال استدیو می توانید اپلیکیشن های Native برای سیستم عامل های Android، iOS و Windows Phone بسازید. Xamarin بهترین گزینه برای برنامه نویسان دات نت و توسعه دهندگانی است که قصد دارند نسخه بومی (Native) اندروید، آی او اس و ویندوز فون اپلیکیشن های مورد نیاز خود را با یک بار برنامه نویسی با بالاترین کیفیت تولید کنند. ضمناً سری اول این محصول با عنوان آموزش ساخت برنامه های اندروید و iOS با Xamarin در سی شارپ سری اول بر روی وبسایت پرووید منتشر شده است.
Xamarin.Forms چیست؟
Xamarin.Forms در سال 2014 راه اندازی شد، و پلت فرمی است که بر روی Xamarin اجرا می شود، در واقع به صورت یک کیت از ابزار UI بوجود آمد که به برنامه نویسان اجازه می دهد به راحتی یک رابط کاربری مشترک در اندروید، iOS و ویندوز فون را ایجاد کنند.
Xamarin.Forms به زبان #C نوشته شده و امکان ایجاد یک نمونه سازی سریع از برنامه های کاربردی پیچیده را فراهم کرده است. برنامه های کاربردی Xamarin.Form برنامه های بومی هستند، و محدودیت های Toolkit ها را ندارد.
پیادهسازی Navigation در اپلیکیشنهای Xamarin
مدیریت Navigation یکی از بخشهای مهم طراحی اپلیکیشن موبایل است؛ زیرا کاربران باید بتوانند بهسادگی میان صفحهها و بخشهای مختلف برنامه جابهجا شوند. در توسعه چندسکویی با Xamarin و C#، لازم است علاوه بر منطق مشترک برنامه، نحوه تعامل کاربران با رابط کاربری Android و iOS نیز در نظر گرفته شود. انتخاب الگوی مناسب برای جابهجایی میان صفحهها به ساختار برنامه و نوع محتوایی که نمایش داده میشود بستگی دارد.
در این دوره، روشهای مختلف Navigation در Android و iOS بررسی میشوند تا توسعهدهنده بتواند تفاوتهای پیادهسازی در این دو پلتفرم را بهتر درک کند. آشنایی با الگوهای رایج جابهجایی میان صفحهها به سازماندهی بهتر رابط کاربری کمک میکند و امکان طراحی تجربهای منسجمتر را برای کاربران فراهم میسازد. این مباحث برای برنامهنویسانی مفید هستند که با مبانی Xamarin آشنا هستند و میخواهند قابلیتهای رابط کاربری را توسعه دهند.
Swipe Navigation در Android و iOS چگونه کار میکند؟
Swipe Navigation به کاربران اجازه میدهد با حرکت انگشت روی صفحه، میان بخشها یا محتواهای مختلف جابهجا شوند. این نوع تعامل در اپلیکیشنهای موبایل کاربرد دارد، زیرا کاربر میتواند بدون نیاز به انتخاب مکرر دکمهها، به بخش دیگری از رابط کاربری دسترسی پیدا کند. با این حال، نحوه پیادهسازی و رفتار این قابلیت ممکن است با توجه به پلتفرم و ساختار صفحه متفاوت باشد و باید با طراحی کلی اپلیکیشن هماهنگ شود.

در این آموزش، پیادهسازی Swipe Navigation برای Android و iOS بهصورت جداگانه بررسی میشود. این مقایسه به توسعهدهندگان کمک میکند درک کنند چگونه یک رفتار مشابه را در دو محیط متفاوت پیادهسازی کنند. برای برنامهنویسان C# که از Xamarin استفاده میکنند، آشنایی با این تفاوتها در کنار شناخت ساختار مشترک برنامه اهمیت دارد؛ زیرا توسعه چندسکویی تنها به اشتراکگذاری کد محدود نیست و رفتار رابط کاربری هر پلتفرم نیز باید در نظر گرفته شود.
Master/Detail Navigation چیست و چه کاربردی دارد؟
الگوی Master/Detail Navigation برای نمایش مجموعهای از گزینهها یا دادهها در کنار جزئیات مورد انتخاب کاربر به کار میرود. برای مثال، در یک برنامه میتوان فهرستی از موارد را نمایش داد و پس از انتخاب هر مورد، اطلاعات مربوط به آن را در بخش جزئیات نشان داد. این الگو به سازماندهی اطلاعات کمک میکند و در برنامههایی که کاربر باید میان چند گزینه انتخاب کند و جزئیات هرکدام را ببیند، کاربرد دارد.

در این دوره، پیادهسازی Master/Detail Navigation در Android و iOS بررسی میشود. همچنین کار با Navigation Drawer در Android بخشی از مباحث است؛ قابلیتی که امکان دسترسی به بخشهای مختلف برنامه را از طریق یک پنل ناوبری فراهم میکند. شناخت این الگوها به توسعهدهندگان کمک میکند ساختار صفحهها و مسیرهای دسترسی را متناسب با نیاز برنامه طراحی کنند و میان قابلیتهای مشترک و ویژگیهای اختصاصی هر پلتفرم تمایز قائل شوند.
کار با پروتکلهای iOS در توسعه Xamarin
در توسعه اپلیکیشنهای iOS، Protocolها برای تعریف مجموعهای از رفتارها و قراردادهایی استفاده میشوند که انواع مختلف میتوانند آنها را پیادهسازی کنند. این مفهوم در طراحی ساختارهای قابل توسعه و ارتباط میان اجزای برنامه نقش مهمی دارد. هنگام کار با Xamarin و C#، آشنایی با مفاهیم و الگوهای مورد استفاده در iOS به توسعهدهنده کمک میکند ساختار این پلتفرم را بهتر بشناسد و هنگام پیادهسازی قابلیتهای آن، تصمیمهای فنی مناسبتری بگیرد.
این دوره در کنار مباحث Navigation، به کار با Protocolهای iOS نیز میپردازد. این ترکیب برای برنامهنویسانی مفید است که میخواهند در توسعه اپلیکیشنهای چندسکویی فراتر از کدهای مشترک حرکت کنند و با مفاهیم مهم هر پلتفرم آشنا شوند. اگر تجربه کار با C# و Xamarin را دارید، این آموزش میتواند به درک بهتر نحوه پیادهسازی رفتارهای رابط کاربری و کار با قابلیتهای مرتبط با iOS کمک کند.
سرفصل مطالب آموزش ویدئویی ساخت برنامه های اندروید و iOS با Xamarin در سی شارپ سری دوم
فصل اول: اهداف دوره ی آموزشی و نیازمندی ها- مقدمه
- انجام Swipe-based Paging
- انجام Multi-screen Navigation
- قبول کردن قابلیت های مختلف پلتفرم ها و Behavior های مشترک
- برای این بسته ی آموزشی به چه چیزی نیاز دارید؟
- جمع بندی
- مقدمه
- بررسی Direct Navigation
- حرکت به سمت Swipe-Navigation
- اضافه کردن Random Access به برنامه
- ساختن Fragment
- پشتیبانی از Package ها و Namespace ها
- اضافه کردن Support Library به عنوان یک Component
- پیاده سازی FragmentStatePagerAdapter
- ساختن Layout مربوط به Activity جدید
- ساختن Swipe-Navigation Activity
- استفاده عملی از Swipe-Navigation
- جمع بندی
- دریافت یک درک عمیق تر
- مقدمه
- حرکت از Direct Navigation به Swipe-Navigation
- اضافه کردن UIPageViewController
- ساختن UIViewController به ازای هر دوره
- نشان دادن صحفه ی اول برنامه
- اضافه کردن Event های Navigation
- اضافه کردن Position Awareness به UIViewController
- هندل کردن Event های Navigation
- استفاده از Swipe Navigation
- اضافه کردن افکت های مربوط به Page
- جمع بندی
- مقدمه
- Protocol ها چه هستند؟
- Xamarin استفاده از Protocol ها را مخفی می کند
- انجام Swipe Navigation با Delegate ها و Protocol
- چالش Protocol ها در سی شارپ
- چرا در مورد این موضوع الان صحبت می کنیم؟
- پیاده سازی Protocol ها در Xamarin
- تاثیر Protocol ها به عنوان Class ها
- پیاده سازی Swipe Navigation در برنامه با Protocol
- جمع بندی
- مقدمه
- تجربه ی کار با Master/Detail در اندروید
- ساختن یک Master List Activity
- کار کردن با یک ArrayAdapter
- چرا یک ArrayAdapter بهترین انتخاب نیست؟
- ساختن یک List Adapter سفارشی
- پیاده سازی List Adapter GetView
- متصل کردن List Adapter سفارشی
- اجرا کردن Detail Activity
- منتقل کردن Intent Extra ها
- جمع بندی
- مقدمه
- مرور کلی Navigation Drawer در اندروید
- معماری Activity ها با Navigation Drawer
- اضافه کردن Navigation Drawer به Layout
- مدیریت کردن داده های Master و Detail با هم
- پر کردن انتخاب های Navigation Drawer
- سفارشی کردن ظاهر Navigation Drawer List
- مدیریت کردن انتخاب های List در Navigation Drawer
- اضافه کردن قابلیت به روز رسانی به FragmentStatePagerAdapter
- به روز رسانی کردن Detail های نشان داده شده
- جمع بندی







