Flutter vs Xamarin مقایسه برنامه نویسی کراس پلتفرم موبایل
در دهه ی اخیر، صنعت موبایل رشد بسیار چشم گیری داشته، مخصوصا در رابطه با توسعه اپلیکیشن های موبایل.
بر اساس گزارش Statista در سال 2015 تعداد 2 میلیارد کاربر موبایل در دنیا وجود داشته که در سال 2020 به بیش از 5 میلیارد کاربر میرسه.
اکثر گوشی های موبایل بر روی سه تا پلتفرم محبوب Android و iOS و Windows Phone تولید شده اند.
قدیم تر ها، توسعه دهنده ها مجبور بودن که از ابزار های بخصوص هر پلتفرم برای اپلیکیشن نویسی استفاده کنن، که خروجی حاصل هم فقط روی همان یک پلتفرم اجرا میشه.
به این اپلیکیشن ها، اصطلاحا Native میگن.
مثلا برای پلتفرم Android باید از زبان Java یا Kotlin استفاده کرد و برای پلتفرم iOS باید از Swift یا Objective-C استفاده کرد.
نقاط ضعف اپلیکیشن نویسی Native
برنامه نویسی Native سرعت پایینی داره (زمان تولید).
هر پلتفرم پیچیدگی ها و گستره ی ابزار و کتابخانه های خودشو داره و شرکت ها مجبورن تا برای هر پلتفرم تیم مجزایی تشکیل بدن.
امروزه، با ابزارهای برنامه نویسی کراس پلتفرم میشه هزینه های تولید و نگه داری رو به شدت کاهش داد.
کراس پلتفرم به معنی اجرا شدن بر روی چند پلتفرم مختلف است.
فریم ورک های کراس پلتفرمی که امروزه محبوبن، Xamarin, React Native و Flutter هستن.
فلاتر – Flutter ابزاریه که گوگل چند سالیه داره توسعش میده و از زمانی که معرفیش کرده آنقدر محبوب شده که همه میگن بقیه فریم ورک های کراس پلتفرم نابود خواهند شد.
البته دور نیست اون زمانی که برنامه نویس های Native هم به شدت کم بشن.
یکی از مهندسان مایکروسافت که 17 سال تو این شرکت کار میکرده، پارسال استعفا میده و به گوگل و تیم Flutter میپیونده.
من 2 سال به صورت حرفه ای Android کار کردم، 1 سال React Native و حالا هم یک ساله که با Flutter کار میکنم.
میتونین تجربه یک سال کار من با Flutter رو اینجا بخونین.
جدول مقایسه
Xamarin vs Flutter
Flutter | Xamarin | |
Dart | C#
+ Java, Kotlin/Swift, Objective-C برای رابط کاربری (Native UI) |
زبان برنامه نویسی |
Android, iOS
WEB, Desktop |
Android, iOS, Windows, Mac OS | کراس پلتفرم |
بسیار نزدیک به 100 درصد | فقط قسمت های به غیر از رابط کاربری (Native UI) | استفاده مجدد از کدها برای هر پلتفرم |
نزدیک به Native | نزدیک به Native | سرعت رابط کاربری (UI) |
کمی حجیم | کمی حجیم | سایز اپلیکیشن |
متوسط | ضعیف | قابلیت استفاده از گرافیک سنگین |
اوپن سورس | اوپن سورس
– ویژوال استودیو برای استفاده تجاری از 539$ تا 2999$ |
هزینه استفاده |
در حال رشد سریع | بزرگ | جامعه کاربری |
زیاد | کم | سرعت رشد قابلیت های پلتفرم |
گوگل | مایکروسافت | شرکت توسعه دهنده |
ممنون از مطالب خوبتون . این چند سایت دیگر هم مطالب خوبی نوشته بودند.
http://ably.ir/Post/3789/flutter-vs-xamarin-vs-react-native/-1
https://flutter-learn.ir/%d9%85%d9%82%d8%a7%db%8c%d8%b3%d9%87-%d9%81%d8%b1%db%8c%d9%85%d9%88%d9%88%d8%b1%da%a9-%d8%b2%d8%a7%d9%85%d8%a7%d8%b1%db%8c%d9%86-%d9%88-flutter/?unapproved=145&moderation-hash=09e3c70f85ff63f4294876d5435ab37a#comment-145
https://virgool.io/@hharddy/flutter-gh2qfxlkxjuu
سلام وقتتون بخیر.
عذر میخوام تو قسمت کراس پلتفرم برای فلاتر، وب و دسکتاپ رو هم گذاشتین! میخواستم ببینم تازگی این امکان اضافه شده و ضعیفه یا اینکه اشتباه شده و هنوز خبری نیست؟ چون من اکثرا میبینم که میگن فلاتر برای موبایله. اگه بشه برای ویندوز و وب هم با فلاتر برنامه نویسی کرد که عالی میشه…