کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش زامارین

دوره آموزش زامارین

Xamarin چیست؟

آموزش زامارین


Xamarin چیست؟

Xamarine یک پلتفرم open-source برای ساخت اپلیکیشن های مدرن و با قابلیت اجرایی بالا برای ios، اندروید و ویندوز با استفاده از .NET میباشد. Xamarin یک لایه انتزاعی است که ارتباط کد به اشتراک گذاشته شده با کد های اساسی پلتفورم را مدیریت می کند.


آموزش Xamarin : با استفاده از Xamarin ، توسعه دهندگان میتوانند حدود ۹۰ درصد اپلیکیشن خود را در پلتفورم ها به اشتراک بگذارند. این الگو به توسعه دهندگان اجازه میدهد که تمام منطق حرفه ای خود را به یک زبان بنویسند( یا از کد های اپلیکیشن های موجود استفاده کنند.) اما اجرا، ظاهر و احساس native را در پلتفورم ایجاد کنند.


اپلیکیشن های Xamarin میتوانند در PC یا Mac نوشته شوند و با کامپایل به یک پکیج native application تبدیل شوند؛ مانند یک فایل .apk برای اندروید یا یک فایل .ipa برای ios.

توجه:

در حال حاضر برای توسعه و کامپایل یک اپلیکیشن ios نیاز به یک دستگاه MacOS داریم. برای اطلاعات بیشتر در زمینه ی نیازمندی های توسعه system requirements را مطالعه کنید.

Xamarin برای چه کسانی است؟

آموزش Xamarin

Xamarin برای توسعه دهندگانی است که اهداف زیر را دنبال میکنند:

  • به اشتراک گذاشتن کد، تست و منطق حرفه ای در پلتفرم های مختلف.
  • نوشتن اپلیکیشن های cross-platform با C# در Visual Studio .

Xamarin چگونه کارمیکند؟


Xamarin چگونه کارمیکند؟

نمودار بالا معماری کلی یک اپلیکیشن cross-platform در Xamarin را نشان میدهد. با Xamarin ما میتوانیم بر روی هر پلتفورم native UI ایجاد کرده و منطق حرفه ای نوشته شده با C# خود را در پلتفرم های مختلف به اشتراک بگذاریم. عموما ۸۰ درصد کد اپلیکیشن با Xamarin قابل اشتراک گذاری است.

Xamarin با استفاده از Mono ساخته شده که یک ورژن open-source از فرم وورک .NET بر اساس استاندارد .NET ECMA میباشد. Mono تقریبا هم زمان با فرم وورک .NET ساخته شده است و بر روی اکثر پلتفورم ها مانند؛ Linux، Unix، FreeBSD و macOS اجرا می شود. محیط اجرایی Mono کار هایی مانند تخصیص حافظه، جمع آوری زباله ها و همکاری با پلتفرم های اساسی را، به طور خودکار مدیریت میکند.

برای اطلاعات بیشتر درباره معماری خاص پلتفورم میتوانیدXamarin.Androidو Xamarin.iOS را مطالعه کنید.


اضافه کردن امکانات(features)

Xamarin امکانات پلتفورم های native را ترکیب کرده و امکاناتی هم به آنها افزوده است:

  • ۱.کامل کردن binding ها برای SDK های اساسی. Xamarin شامل binding های تقریبا تمامی SDK های اساسی پلتفورم ها در android و ios میباشد. علاوه بر این، این binding ها strongly-typed هستند، پس میتوان به راحتی از آنها استفاده کرد و همچنین میتوان در زمان کامپایل و توسعه با دقت زیاد به بررسی type آنها پردخت. Strongly-typed بودن این binding ها باعث میشود که خطا های زمان اجرا کمتری داشته باشند و اپلیکیشن هایی با کیفیت بهتر تولید کنند.
  • ۲.استفاده از objective-C، Java،C و C++. Xamarin این امکان را به ما میدهد که از کد های موجود استفاده کنیم و استفاده مستقیم از library های C شی گرا، جاوا، C و C++ را برای ما ممکن میکند.
  • ۳. ساختار های زبانی جدید. اپلیکیشن های Xamarin با C# نوشته میشوند که زبان جدیدی است و نسبت به Cشی گرا و جاوا پیشرفت قابل توجهی دارد مانند امکانات dynamic در زبان، ساختار های تابعی مانند lambdas، LINQ، برنامه نویسی موازی، generics و بسیاری دیگر.
  • ۴. Base Class Library (BCL)با توان بالا. اپلیکیشن های Xamarin از.NET BCL استفاده میکنند که متشکل از تعدادی کلاس با امکاناتی جامع و کارآمد مانند؛ XML قوی، Database، Serialization، IO، String، پشتیبانه شبکه و ... میباشند. کد C# موجود میتواند برای استفاده در app کامپایل شود که دسترسی به هزاران library، که امکاناتی فراتر از BCL را در اختیار ما قرار میدهند، را ممکن میسازد.
  • ۵.Integrated Development Environment(IDE) مدرن. Xamarin از Visual Studio استفاده میکند که یک IDE مدرن با امکاناتی مانند؛ تکمیل خودکار کد، سیستم سطح بالا مدیریت پروژه و راه حل ها، کتاب خانه های جامع، integrated source control و...
  • ۶. پشتیبانی mobile cross-platform. Xamarin پشتیبانی cross-platform باسطح بالا برای سه پلتفرم اصلی ios، android و windows ارائه میدهد.اپلیکیشن ها میتوانند طوری نوشته شوند که تا ۹۰ درصد کد خود را به اشتراک بگذارند و Xamarin.Essentials دارای API یکپارچه ایست که دسترسی به کد ها را در هر سه پلتفرم ممکن میسازد. کد های به اشتراک گذاشته شده باعث کم شدن هزینه وزمان توسعه برای برای توسعه دهندگان از راه دور میشود.

Xamarin.Android


Xamarin.Android

اپلیکیشن های Xamarin.Android از C# به ابتدا از C# به زبان میانی (intermediate language) و سپس در زمان شروع اپلیکیشن just-in-time(JIT) به native assembly کامپایل میشوند. اپلیکیشن هایXamarin.Android درون محیط اجرایی Mono به همراه Android Runtime virtual machine(ART) اجرا میشوند.Xamarin ،Binding های .NET را برای Android.* namespace و Java.* namespace فراهم میکند. فضای اجرایی Mono توسط Managed Callable Wrappers(MCW) صدا زده شده و Android Callable Wrappers(ACW) را برای ART فراهم میکند که به هی دو محیط اجازه دسترسی به کد درون یکدیگر را میدهد.

برای اطلاعات بیشتر بهXamarin.Android architecture مراجعه کنید.


Xamarin.ios


Xamarin.ios

اپلیکیشن های Xamarin.ios به شکل Ahead-of-time(AOT) از C# به native ARM assembly کامپایل میشوند. Xamarin از selector ها برای نمایش کد Objective-C به managed C# و از Registrar ها برای نمایش کد managed C# به Objective-C استفاده میکند. به مجموعه Selector ها و Registrar ها ، “binding” ها گفته میشود که به Objective-C و C# ارتباط بر قرار میکنند.

برای اطلاعات بیشتر به Xamarin.iOS architecture مراجعه کنید.


Xamarin.Essentials


Essentials یک کتابخانه ست که API های cross-platform برای امکانات دستگاه ها فراهم میکند. Xamarin.Essentials هم مانند xamarin یک لایه انتزاعی است که دسترسی به امکانات native را ساده تر میکند.

برخی از مثال های کارکرد Xamarin.Essentials شامل مواد زیر است:

  • اطلاعات دستگاه
  • File system
  • Accelerometer
  • شماره گیر گوشی
  • Text to speech
  • قفل گوشی

برای اطلاعات بیشتر به Xamarin.Essentials مراجعه کنید.


Xamarin.Forms


forms یک فرم وورک open-source برای UI میباشد که به توسعه دهندگان اجازه میدهد اپلیکیشن های ios، android و windows را با یک کد اصلی مشترک، بسازند و همچنین رابط کاربری در XAML را با code-behind در c# تولید کنند. این UI ها بر روی هر پلتفرم به عنوان مجری native control ها عمل میکنند.

برخی از مثال های کارکرد Xamarin.forms شامل موارد زیر است:

  • XAML UI language
  • Databinding
  • Gestures
  • Effects
  • Styling

برای اطلاعات بیشتر به Xamarin.Forms مراجعه کنید.


ايجاد يك پروژه در زامارين

نوشتن اولین برنامه در زامارین -ساخت اولین اپ Xamarin.Forms
ساخت اولین اپ Xamarin.Forms

در اين مقاله از آموزشگاه تحليل داده ساخت اولين اپليكيشن در زامارين را به شما آموزش مي دهيم.

3462 بازدید
ادامه
آموزش ساخت اپلیکیشن های تک صفحه ای  در زامارين
آموزش ساخت اپلیکیشن های تک صفحه ای در زامارين

در اين مقاله از آموزشگاه تحليل داده ساخت اپلیکیش های تک صف ای Xamarin.Forms را در زامارين آموزش مي دهيم.

2149 بازدید
ادامه
آموزش ايجاد اپلیکیشن های چند صفحه ای در زامارين
آموزش ايجاد اپلیکیشن های چند صفحه ای در زامارين

در اين مقاله از آموزشگاه تحليل داده ايجاد اپلیکیشن های چند صفحه ای در زامارين را به شما آموزش مي دهيم.

2106 بازدید
ادامه
آموزش ذخيره داده در پايگاه داده Local SQLite.NET در زامارين
آموزش ذخيره داده در پايگاه داده Local SQLite.NET در زامارين

در اين مقاله آموزشي از آموزشگاه تحليل داده ذخيره داده در پايگاه داده Local SQLite.NET در زامارين را آموزش مي دهيم.

2180 بازدید
ادامه
استايل يك اپليكيشن Cross-platform در زامارين
استايل يك اپليكيشن Cross-platform در زامارين

در اين مقاله از آموزشگاه تحليل داده استايل يك اپليكيشن Cross-platform در زامارين را به شما آموزش ميدهيم.

1734 بازدید
ادامه
آموزش جامع xamarin
بررسی عمیق تر Xamarin.Forms Quickstart

در این مقاله از آموزشگاه تحلیل داده بررسی جامعی از Xamarin.Forms Quickstart را می کنیم

2102 بازدید
ادامه