check home phone-call search send

زامارین چیست و مزیت های استفاده از آن

یکی از ابزارهای طراحی برنامه های موبایلی، ابزار زامارین است. چند وقت پیشم به تعدادی از کاربران قول دادم در این زمینه یعنی زامارین چیست مقاله ای منتشر کنیم. در این مطلب میخواهیم بررسی کنیم زامارین چیست و مزیت های استفاده از آن چی هستند. اگر میخواهید بیشتر در مورد ابزار زامارین بدونید پیشنهاد میکنم این مقاله رو حتما مطالعه کنید. چون سعی میکنم هم مزیت های زامارین رو بگیم هم معایب آن رو مورد بررسی قرار دهیم.

زامارین چیست و مزیت های استفاده از آن

زامارین چیست

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

به عبارت دیگر: زمانی که شما با استفاده از زبان C# (سی شارپ) اقدام به ساخت اپلیکیشنی در فضای زامارین می کنید، دیگر نیازی به تغییر یا بازنویسی آن (مثلاً به زبان جاوا و…) جهت استفاده در دیگر پلت فرم ها ندارید. در واقع میتوان گفت زامارین یک ابزار برنامه نویسی چند سکوییست.

Xamarin نام شرکتی است که ابزارهای توسعه نرم افزار تجاری تولید می کند. این شرکت با استفاده از پروژه متن باز Mono بستری را فراهم می آورد که بتوان با استفاده از #C و NET. بتوان برنامه هایی برای اندروید و OS X و IOS ساخت. Xamarin برای ساخت برنامه های اندروید محصول Xamarin.Android را به بازار عرضه کرده است. 

مزایایی استفاده از زامارین

بعد از اینکه گفتیم xamarin چیست حالا میخواهیم مزایای زمارین رو مورد بررسی قرار دهیم و ببینیم برنامه نویسی زامارین چه مزایایی دارد. در بخش زیر تعدادی از مزایایی زامارین رو آورده ایم:

1- امکان انتقال کدها میان اپلیکیشنهای ساخته شده با استفاده از زامارین صرف نظر از ساختار پلت فرمی که در آن قرار دارد.

2- زامارین تنها چارچوبیست که در هر قالب پلت فرمی ویژگیهای اپلیکیشن های (native) آن پلت فرم را به خوبی به خود میگیرد. (native app به اپلیکیشن هایی گفته میشود که در محیط نرم افزاری مختص به پلت فرمی خاص ساخته میشود. مثلاْ برای استفاده در پلت فرم اندروید در اپلیکیشنی را در Android studio طراحی کنیم.)

3- امکان ساخت اپلیکیشن های (IOS – Android – Windows phone ) با قابلیت انتقال کدهای یکسان (تا حدود 96%)

4- [portable class librariries] که به شما امکان استفاده مجدد از کدها را داده و درعین حال تعداد پروژه ها را کاهش میدهد.

5- امکان اضافه کردن مؤلفه هایی شامل نمودارها، جداول، نمایه های زیبا، [UI control] ها و… بصورت مستقیم از [IDE].

6- با قالب زامارین رابط طراحی هر سه پلتفرم بصورت مشترک با چارچوب اساسی [XAML] خواهد بود.

معایب استفاده از زامارین

بعد از اینکه در مورد مزایای زامارین صحبت کردیم حال تعدادی از مشکلات و معایب آن رو در بخش زیر قرار داده ایم:

  • دارا بودن لایسنس Xamarin.Android همانند Xamarin.IOS و Xamarin.OS x ابزارهای تجاری هستند و باید خریداری شوند. البته در کشور ما این مشکل حادی نیست.
  • انتظار برای آپدیت در اکثر مواقع وقتی که یک نسخه از اندروید به بازار عرضه می شود مدت زمانی طول می کشد که شرکت Xamarin نرم افزار خود را آپدیت کند تا این نرم افزار با آخرین نسخه اندروید سازگار باشد.
  • کارایی (performance) و مدیریت حافظه گاهی اوقات گفته می شود که استفاده از زبان #C برای توسعه برنامه های اندروید سرعت را کاهش می دهد ولی هنوز اندازه گیری و ارزیابی درستی از این قضیه به عمل نیامده است.

توجه: اگر شما با سی شارپ آشنا هستید و صرف جویی در وقت برای شما در اولویت است با زامارین کار کنید تا زودتر به نتیجه برسید و هزینه کمتری هم پرداخت کنید. 

حتما مطالعه شود: چند وقت پیش یکی از کاربران پیام داد و گفت من زامارین کار می کنم ولی از وقتی مقاله ای با عنوان راه میان‌بری احمقانه به نام XAMARIN رو خوندم سرد شدم. دوستان عزیز من، این شخصی که این مقاله رو نوشته نمیشناسم ولی از لفظ و طرز بیانش که از کلماتی مثل احمقانه، بی شعور و … استفاده کرده است می توان تا حدودی فهمید از روی تعصب به زامارین می تازد و اصلا چیز خاصیم نمیگه و چند چیز ساده رو مورد بررسی قرار داده است. پیشنهاد میکنم روی این موضوع بیشتر فکر کنید و زیاد درگیر این مدل مقالاتی نشید. متاسفانه ایشون به جای نقد و بررسی زامارین به صورت منصفانه، شروع به زدن زامارین کرده است به خاطر اینکه خودشون از طریق جاوا دارند کد نویسی می کنند. درسته کدنویسی از طریق جاوا فوق العاده است ولی نباید قدرت زامارین رو دست کم گرفت و باید منصفانه نقد کرد و اگر ما خوبی های جاوا رو می گیم خوبی های زامارین رو هم بگیم. پس زیاد درگیر این مدل مقالات نشید. (البته این نکته رو هم بگم که این مقاله مربوط به اوایل سال 95 است و دو سال از این مقاله میگذرد و زامارین به شدت قوی شده است.)

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

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

Avatar
پشتیبان سورس ایران 2180 مطلب منتشر شده

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

دیدگاه کاربران

تعداد دیدگاه های کاربران : 4 دیدگاه
Avatar
Digital Boy
پاسخ دهید

سلام. من خودم توسعه دهنده نیتیو اندروید هستم . قطعا هیچ فریمورکی تا حالا جای نیتیو رو نگرفته و قدرتمند ترین روش نوشتن برنامه نیتیو هست ولی react native هم روش مناسبی هست که مزایای خودشو داره. ممنون که تعصبی مقاله نمینویسید.

    Avatar
    پشتیبان سورس ایران در پاسخ Digital Boy
    پاسخ دهید

    سلام
    وقت بخیر
    الان چیزای جدید زیاد امده
    البته نمیشه گفت react native فوق العاده هستش اما جز خوب ها هست

Avatar
علی
پاسخ دهید

بعید میدونم با استقبالی که از react native و flutter شده آینده روشنی برای xamarine قابل تصور باشه. برای برنامه نویسهای #C که می خوان یه app دم دستی درست کنن شاید ولی برای بقیه گزینه هالی بالا جذابتر هستند.

    Avatar
    پشتیبان سورس ایران در پاسخ علی
    پاسخ دهید

    سلام
    این نظر شماست
    زامارین شرکتی مثل مایکروسافت پشتش هست پس باید قبول کرد که تکنولوژی فوق العاده ای هستش
    شکی نیست که react native گزینه خوبیه، ولی زامارینم واقعا فوق العاده ست
    حالا بر اساس نیاز و شرایط باید انتخاب کن


شما با موفقیت در خبرنامه ما عضو شدید