5 دلیل برای انتخاب Xamarin برای توسعه پلتفرم

  • 2021-06-30

Xamarin یکی از محبوب ترین ابزارهای توسعه برنامه متقاطع برای iOS ، Android ، TVOS ، WatchOS ، MacOS و Microsoft (برنامه های UWP) با استفاده از C # و . NET است. در سال 2019-2020 ، در بین پنج چارچوب محبوب موبایل متقاطع مورد استفاده توسط توسعه دهندگان نرم افزار در سراسر جهان قرار گرفت. شرکت های مشهور مانند Bosch ، زیمنس ، Slack ، Pinterest ، UPS ، Outback Steakhouse ، Aggreko و دیگران در پروژه های توسعه برنامه خود به آن اعتماد کردند. در این مقاله ، ما تجربه Auriga را در تهیه یک برنامه با استفاده از Xamarin به اشتراک خواهیم گذاشت ، در مورد اینکه چرا ارزش استفاده را دارد ، بحث خواهیم کرد و توضیح می دهیم که در مورد خاص ما چگونه سودمند بوده است.

cross-platform-mobile-frameworks

شکل 1 چارچوب های موبایل متقاطع استفاده شده توسط توسعه دهندگان نرم افزار در سراسر جهان در سال 2019 و 2020 (منبع: آمار)

مطالعه موردی: یک برنامه قدیمی در یک بستر جدید

ما قبلاً در مورد مهاجرت برنامه های منسوخ در وبلاگ خود بحث کرده ایم (به عنوان مثال ، اینجا و اینجا). اگر به روزرسانی یک برنامه یا معرفی ویژگی های جدید به آن نیاز به پول و تلاش بیش از حد داشته باشد ، یا در صورت عدم وجود مستندات یا متخصصان دانستن پایگاه کد برای پشتیبانی از فعالیت های فوق ، راه حل مناسب انتقال برنامه منسوخ به پشته فناوری جدید است. واددر اصل ، این به معنای نوشتن یک برنامه از ابتدا با استفاده از منطق و UI یک برنامه موجود است.

در مورد ما ، برنامه مشتری در LabView تهیه شده است. با شروع این پروژه ، بیش از 10 سال وجود داشته است. در این مدت ، مستندات پروژه منسوخ شد. هیچ متخصص حمایتی باقی نمانده است ، و مهمتر از همه ، انتقال برنامه به یک سیستم عامل جدید (OS) بسیار پرهزینه و مصرف منابع بود.

الزامات اصلی توسعه برنامه جدید به شرح زیر بود:

  • iOS و ویندوز با تولید مثل کامل برنامه قدیمی UI/UX پشتیبانی می کنند
  • توسعه برنامه در مهلت های تنگ
  • سهولت پشتیبانی و مقیاس پذیری برای پیشرفت های آینده

با توجه به وظایف مورد نیاز ، Xamarin یک راه حل بهینه بود و به همین دلیل است.

دلیل 1: پشتیبانی چند برابر بومی

Xamarin دسترسی کامل به API های بومی و ابزارهای مورد استفاده در سیستم عامل های Android ، iOS و Windows را فراهم می کند. از این رو ، می تواند برای هر برنامه طراحی و عملکرد تقریباً بومی ارائه دهد. این یک دلیل خوب برای ترجیح راه حل های مبتنی بر Xamarin به رقبای ترکیبی آن است.

دلیل 2. مهلت های توسعه تنگ

مهاجرت برنامه همیشه با مهلت تنگ همراه است و Xamarin این نیاز را کاملاً برآورده می کند. از جمله مزایای آن ، می توانیم ذکر کنیم:

  • استفاده مجدد از یک پایگاه کد برای iOS و Windows زمان توسعه را کاهش می دهد
  • امکان استفاده از محبوب و آسان برای یادگیری C # و . NET سرعت توسعه را افزایش می دهد
  • نصب Visual Studio برای شروع کافی است

نظرسنجی ها نشان می دهد که یک چهارم از توسعه دهندگان از این IDE برای اشکال زدایی و کار با کد استفاده می کنند.

Xamarin یک ابزار توسعه قدرتمند و راحت است. این امکان را به شما می دهد تا یک روز یک نمونه اولیه را به معنای واقعی کلمه ایجاد کنید و آن را بدون دستگاه های واقعی در ویژوال استودیو با استفاده از مدل های شبیه سازی ، صرفه جویی در وقت.

دلیل 3. نگهداری آسان و آموزش سریع

چندین آموزش و دستورالعمل Xamarin وجود دارد. آنها بهترین شیوه هایی را ارائه می دهند که مهندسان جدید می توانند یاد بگیرند که سریعتر با یک پروژه سازگار شوند. همچنین دانشگاه Xamarin ، یک پرتال آموزشی آنلاین برای کسانی که به تازگی شروع به کشف بسته کرده اند ، وجود دارد. این برای مهندسان با دانش C# و همچنین هر کسی که تجربه برنامه نویسی کمی دارد ایجاد شده است. این منبع تمام اطلاعات لازم را برای مهندسان با استفاده از محصولات مبتنی بر Xamarin فراهم می کند.

علاوه بر این ، Xamarin حفظ برنامه ها را آسان تر می کند. شما فقط در پرونده منبع تغییر یا به روزرسانی می کنید و آنها به طور خودکار در برنامه های iOS ، Android و Windows اعمال می شوند. با این حال ، به خاطر داشته باشید که فقط برای برنامه های با استفاده از xamarin. forms کار می کند.

دلیل 4. انتخاب اولویت ها

دو رویکرد برای توسعه برنامه در Xamarin - اشکال و بومی وجود دارد.

xamarin-graph

شکل 2 جوانب مثبت و منفی رویکردهای توسعه زامارین

شکل 2 معیارهای مهمی را برای انتخاب بین این رویکردها برای توسعه برنامه نشان می دهد.

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

بنابراین ، Xamarin. Forms را انتخاب کنید تا توسعه دهید:

  • برنامه های MVP (حداقل محصول مناسب)
  • برنامه های ساده با عملکرد محدود

Xamarin. Native را برای توسعه انتخاب کنید:

  • سیستم های بار بالا
  • برنامه های یکپارچه با سایر خدمات
  • برنامه هایی که در آن رابط کاربری مهمتر از استفاده مجدد از کد است
دلیل 5. سهولت اجرای پلتفرم

انجام توسعه متقاطع با استفاده از Xamarin آسان و راحت است. شما کد کلی را برای iOS ، Android و Windows می نویسید ، و Xamarin می گوید چگونه می توانید کد خود را به API های بومی برای هر سیستم عامل پیوند دهید. علاوه بر این ، می توان نه تنها کد عمومی بلکه همچنین کد خاص پلتفرم را نوشت ، و Xamarin می داند چه کاری باید انجام دهد و از کجا باید این کار را انجام دهد. یکی از مکانیسم های اصلی دستیابی به عملکرد متقابل پلتفرم ، خدمات هوشمند قادر به برقراری تماس های وابسته به متقابل است (یعنی پرداختن به یک یا اجرای دیگری از عملکرد خاص بسته به سیستم عامل). شما نه تنها می توانید کد خاص پلتفرم را در C# بنویسید بلکه آن را به Markup XML اضافه کنید. در مورد ما ، نسخه iOS محدود بود و بخشی از رابط گرافیکی پنهان می شد. علاوه بر این ، اندازه برخی از عناصر به سکو بستگی دارد.

برای روشن شدن ، در اینجا یک مثال آورده شده است. در پروژه ما ، از یک کتابخانه کلاس ارائه شده به مشتری که در C ++ نوشته شده است استفاده کردیم. بیایید آن را Medicallib بنامیم. Medicallib بسته به سکو (Static Medicallib. a برای iOS و Dynamic Medicallib. dll برای ویندوز) در دو مجموعه مختلف گردآوری شد. علاوه بر این ، کلاس های مختلف بسته بندی (کلاس های آداپتور) برای استناد به کد بدون کنترل داشت. پروژه اصلی (پایه کد مشترک) حاوی توضیحی از API Medicallib (رابط) و پروژه های خاص برای سیستم عامل برای iOS و ویندوز به ترتیب شامل پیاده سازی های خاص این رابط و ارجاع به مجامع Medicallib. a و Medicallib. dll بود. از کد اصلی ، ما عملکردهای خاص انتزاع را بدون فکر کردن در مورد نحوه اجرای آنها فراخوانده ایم. مکانیسم های Xamarin. Forms فهمید که چه بستر ای از برنامه در حال اجرا است ، به نام اجرای مورد نیاز ، و یک مونتاژ خاص را بارگیری می کند.

این فرآیند در شکل 3 نشان داده شده است.

xamarim-forms

شکل 3 توابع وابسته به بستر های نرم افزاری در Xamarin. Forms

اشکال Xamarin

مطمئناً ذکر مختصری از مضرات Xamarin ، که ما هنگام تصمیم گیری در مورد این ابزار در نظر گرفتیم ، بسیار مهم است.

در مرحله اول ، اندازه بزرگتر برنامه کتبی بر سرعت بارگیری و میزان فضای دیسک موجود در دستگاه تأثیر می گذارد. در پروژه ما ، این مهم نبود ، زیرا برنامه برای اهداف داخلی ساخته شده و برای استفاده گسترده در نظر گرفته نشده است.

در مرحله دوم، تاخیرهای جزئی به روز رسانی برای آخرین نسخه های اندروید و iOS وجود دارد. نسخه‌های پشتیبانی‌شده سیستم‌عامل‌ها برای برنامه ما تجویز شده‌اند، در حالی که کاربران نهایی نمی‌توانند بدون اجازه سرپرست سازمان به‌روزرسانی‌ها را دانلود و نصب کنند. این به ما زمان داد تا نقص های نسخه جدید سیستم عامل را بررسی و رفع کنیم.

ثالثاً، جامعه توسعه دهندگان Xamarin نسبتاً جوان هستند و علیرغم تلاش های دانشگاه Xamarin و آموزش های متعدد، یافتن یک توسعه دهنده با تجربه عملی Xamarin همچنان چالش برانگیز است.

در نهایت، از آنجایی که کد UI مختص پلتفرم است، استفاده از Xamarin برای ایجاد انیمیشن های پیچیده، توسعه رابط های کاربری سفارشی پیچیده و ایجاد بازی غیرعملی است.

جمع بندی

اکثر تصمیم گیرندگان Xamarin را برای توسعه بین پلتفرمی انتخاب می کنند زیرا با استفاده مجدد از کد و استفاده از یک پشته فناوری، زمان ورود به بازار و هزینه های توسعه را کاهش می دهد. تجربه تیم ما نشان می‌دهد که Xamarin توانایی ساخت سریع MVP را با حداقل هزینه‌های مهندسی و آزمایش برنامه برای دوام را فراهم می‌کند.

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

ثبت دیدگاه

مجموع دیدگاهها : 0در انتظار بررسی : 0انتشار یافته : ۰
قوانین ارسال دیدگاه
  • دیدگاه های ارسال شده توسط شما، پس از تایید توسط تیم مدیریت در وب منتشر خواهد شد.
  • پیام هایی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
  • پیام هایی که به غیر از زبان فارسی یا غیر مرتبط باشد منتشر نخواهد شد.