ورود و عضویت
0
سبد خرید شما خالی است
0
سبد خرید شما خالی است

مقایسه فریموورک زامارین و فلاتر – بهترین گزینه برای برنامه نویسی

استفاده از موبایل در دهه هی گذشته دچار تغییراتی زیاده شده طبق آمار اعلام شده حدود 2.2 میلیارد گوشی هوشمند در دنیا در حال استفاده می باشد, در این میان روش و ابزار های برنامه نویسی برای موبایل ها هم تغییرات زیادی کرده اند.

تمام گوشی های هوشمند دنیا از یکی از سه سیستم عامل ویندوز فون, اندروید و یا iOS استفاده می کنند.

تا سال ها قبل برای توسعه  اپلیکیشین باید از زبان های نیتیو استفاده می شد برای مثال از زبان جاوا برای اندروید و از سویفت برای iOS به همین دلیل برنامه نویسی اپلیکیشن برای شرکت ها هزینه زیادی ایجاد می کرد چون باید دو تیم مختلف برای هر پلتفرم استخدام می کردند.

با پیدایش فریموورک های چندسکویی که به افراد اجازه میداد با یک زبان برنامه نویسی برای سیستم عامل های مختلف برنامه نوشت این هزینه های اضافی از شرکت ها کم شد فرمیوورک هایی مثل فون گپ,زامارین,Flutter,React Native و…

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

فریمورک زامارین Xamarin

زامارین در سال 2011 پا به عرصه گذاشت و از زبان محبوب سی شارپ برای ساخت اپلیکیشن های خود استفاده می کند. این فریموورک در سال 2016 توسط مایکروسافت خریداری شد. زامارین به توسعه دهندگان امکان دسترسی به API نیتیو هر سیستم عامل و می دهد.

زامارین هم اکنون بصورت متن باز در اختیار همگان قرار دارد.

فریمورک فلاتر

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

مقایسه فلاتر و زامارین

فلاتر محصوص جدیدی هست که نسخه بتای آن در ژانویه سال 2018 منتشر شد و به همین دلیل توسعه دهندگانی که از زامارین استفاده می کنند بسیار بیشتر از فلاتر می باشند. طبق آمار حدود 7.2 درصد کاربران Stackoverflow از زامارین استفاده می کنند و بنا به گفته مایکروسافت جامعه زامارین 1.2 میلیون کاربر دارد اما Flutter از چنین آماری طبیعتا برخوردار نیست.

تصویر زیر مقایسه ای کوچک بین دو فریموورک را نشان می دهد.

مقایسه Flutter و Xamarin
مقایسه Flutter و Xamarin

پرتابل بودن

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

همچنین Flutter از سیستم عامل های 32 بیتی پشتیبانی نمیکند این به این معنی است که اگر برای گوشی های قدیمی مثل آیفون5 قصد طراحی اپلیکیشن داشته باشید باید از زامارین استفاده کنید.

زبان برنامه نویسی

فریموورک زامارین از زبان محبوب C# استفاده می کند که افراد خیلی زیادی با آن آشنا هستند در آن طرف میدان فلاتر از زبان برنامه نویسی جدید دارت استفاده می کند. دارت زبان نسبتا کمتر شناخته شده ای است که گوگل چند سال قبل آنرا معرفی کرده. دارت بسیار بسیار شبیه به زبان جاوا هست و اگر با جاوا آشنایی داشته باشید دارت 1-2 روز بیشتر زمان شما را نمیگیرد.

دسترسی نیتیو به سیستم عامل

در فلاتر کد های دارت توسط AoT  به نیتیو تبدیل می شوند اما هنوز هم به Dart VM نیاز دارند. علت این کار هم این هست که سیستم عامل iOS از JIT پشتیبانی نمی کند. فلاتر همچنین به شما اجازه می دهد که پلاگین های مخصوص به خود را بسازید.

فریموورک فلاتر به تمام API ها و سرویس دسترسی دارد مثل انواع سنسور ها.

android

در زامارین کد های C# به کد ماشین تبدیل می شود سپس در پلتفرم اندروید زامارین از JIT استفاده می کند و در iOS ازAoT .

زامارین از API های دات نت برای دسترسی به سرویس ها کمک می گیرد.

زامارین
Xamarin

طراحی UI

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

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

فلاتر به دلیل تازه بودن هنوز بخش UI آن در حال توسعه می باشد و از پتانسیل های بالایی در آینده برخوردار هست.

تجربه برنامه نویسی

Flutter از قابلیت hot reload بهره میبره که بدون اجرا و کامپایل کردن برنامه میتونید تغییرات خودتون و ببینید و اگر برنامه به خطایی خورد و دوباره اجرا کردید مقدار state های تغییری پیدا نمی کند که باعث می شو برنامه نویسی خیلی سریع تر و لذت بخش تر باشد. همچنین در Flutter از زبان های نیتیو مثل کاتلین,جاوا,سویفت نیز میتونید استفاده کنید.

سایز فایل برنامه

در ابتدا انتشار Flutter سایز فایل apk خروجی حدود 40مگابایت بود در حالی که در آن زمان زامارین سایزی در حدود 20مگابایت ایجاد میکرد. امروز با گذشت زمان سایز apk در فلاتر به 4مگابایت رسیده و زامارین 7مگابایت.

3 پاسخ به “مقایسه فریموورک زامارین و فلاتر – بهترین گزینه برای برنامه نویسی”

  1. مهدی گفت:

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Hesam
02 جولای 2023
آموزش فارسی فلاتر
آموزش فارسی flutter