فلاتر یک فریم ورک متن باز برای ساخت اپلیکیشنهای موبایل است. این کتابخانه توسط شرکت گوگل در سال 2017 معرفی شد و در مقایسه با React یا سایر فریم ورکهای ساخت اپلیکیشن مبتنی بر موبایل عمر زیادی ندارد. فلاتر با زبان برنامه نویسی دارت نوشته شده است، یک زبان چندمنظوره و شی گراء که هنوز آنطور که باید و شاید بر سر زبانها نیفتاده و محبوبیت زیادی ندارد. با یادگیری زبان دارت و فریم ورک فلاتر میتوانید برای اندروید و iOS اپلیکیشن بسازید. جالب است بدانید علی بابا، یکی از بزرگترین شرکتهای چینی در دنیا به فلاتر اعتماد کرده و اپلیکیشن خود را با این فریم ورک ساخته است. در این مطلب بررسی خواهیم کرد که فریم ورک Flutter چیست و چه کاربردهایی دارد.
میدانیم که زبان اصلی برنامه نویسی اندروید، جاوا است و برنامه نویسان iOS هم از Swift برای توسعه اپلیکیشنهای موبایلی استفاده میکنند. جاوا پیچیدگیهای خاص خودش را دارد و شاید کار با آن به اندازه زبانهایی مثل پایتون یا جاوا اسکریپت راحت نباشد. همین مساله باعث شده که سایر زبانها هم برای توسعه برنامههای موبایلی به کار گرفته شوند. مثلا React یک راه حل نسبتا آسان برای ساخت اپلیکیشنهای موبایل مبتنی بر جاوا اسکریپت است. یا فلاتر که یک پیادهسازی خوب از زبان دارت است.
به نظر میرسد گوگل میخواهد سرویسهای مختلف خود را به هم مرتبط کند و عطش این شرکت برای برای تصاحب بازارهای مختلف تمامی ندارد. گوگل بعد از اندروید و موفقیت بی سابقه آن روی یک پلتفرم جدید به نام Fuchsia کار میکند. یک سیستم عامل جدید که برخلاف اندروید مبتنی بر هسته لینوکس نیست و از یک ریزهسته جدید به نام Zircon استفاده میکند. همینطور زبان دارت و یک فریم ورک به نام Flutter که قرار بود پلی برای ورود برنامههای موبایل به سیستم عامل جدید گوگل یعنی Fuchsia باشد را معرفی کرد.
فهرست محتوای این مقاله
در این قسمت، صرف نظر از اینکه رقبای فلاتر چه امکاناتی دارند و بدون مقایسه کردن این فریم ورک با آنها، به بررسی مزایای فلاتر پرداختهایم.
یکی از دلایل این است که برنامه نویسان جاوا، کاتلین یا سویفت که قبلا به صورت native برای سیستم عامل خود کد میزدند حالا باید سراغ یک زبان جدید بروند. یعنی زبان دارت. حالا در کشور ما اگر یک شرکت برای توسعه اپلیکیشن خود با فلاتر بخواهد چند برنامه نویس دارت استخدام کند احتمالا با گزینههای محدود و افراد کمتری نسبت به سایر تکنولوژیها مواجه میشود. چون این تکنولوژی نسبتا جدید است. هر چند از طرفی یادگیری یک زبان جدید و نسبتا آسان برای بیشتر برنامه نویسان چالش جدید و هیجان انگیزی به حساب میآید. چون یک برنامه نویس موفق کسی است که همیشه تشنه یادگیری و امتحان چیزهای جدیدتر است.
فرض کنید میخواهید یک بازی بزرگ مثل Clash of Clans بسازید، یا تصمیم دارید یک اپلیکیشن مالی با سرویسهای متنوع طراحی کنید. شنیدهاید که فلاتر انتخاب خوبی است و سراغ آن میروید. اما میانه راه متوجه خواهید شد که پیاده کردن بسیاری از مفاهیمی که مدنظر داشتید در این پلتفرم یا غیرممکن است یا بسیار سخت خواهد بود. در واقع Flutter انتخاب خوبی برای ساخت بازیهای بزرگ یا اپلیکیشنهای پیچیده نیست.
بسیاری از برنامه نویسان معتقدند که فلاتر هنوز قدرت لازم برای ساخت برنامههای بزرگ را ندارد و بهتر است در پروژههای سادهتر یا برای ساختن نمونه اولیه یک سرویس استفاده شود. همینطور جدید بودن فلاتر هم یکی از دلایل دودل شدن بسیاری از برنامه نویسان است. چرا باید زبان جاوا که چند دهه برای توسعه برنامههای اندرویدی استفاده شده را رها کرده و سراغ یک تکنولوژی با ثبات کمتر برویم؟
در دفاع از فلاتر باید بگوییم که جدید بودن یک ایراد نیست و باید به یک سرویس جدید که معرفی میشود فرصت داد تا خودش را نشان دهد. همینطور اگر چرخی در اینترنت بزنیم، میبینیم که پروژههای بسیار خوبی با این فریم ورک طراحی شدهاند و این نظریه را که شاید فلاتر گزینه مناسبی برای توسعه محصولات بزرگ نباشد را زیرسوال بردهاند.
فقط یک ماه بعد از انتشار اولین نسخه پایدار از Flutter، تعداد 50 هزار ستاره برای این پروژه جدید گوگل در گیت هاب ثبت شد. همینطور در یک نظرسنجی آنلاین که توسط تیم تحقیقاتی فلاتر انجام شد، 93% شرکتکنندگان اعلام کردند که از این فریم ورک "بسیار راضی" و "راضی" هستند. این عدد نسبت به 92% که در جولای 2018 ثبت شده بود 1% بالاتر است.
بازار اصلی محصولات اندرویدی Google play store میباشد و اپل هم از مارکت اختصاصی خود به نام App Store استفاده میکند. در طول مقاله گفتیم که فلاتر خیلی محبوب نیست و حالا با آمار و ارقام آن را ثابت میکنیم. تا امروز 5% برنامههای منتشر شده در گوگل پلی و اپ استور با فلاتر ساخته شدهاند. فلاتر هم برای iOS استفاده میشود هم برای Android و 81% برنامه نویسان پروژههای خود را برای هر دو پلتفرم منتشر کردهاند. اما در یک اقدام عجیب نزدیک به 12% برنامهها فقط برای اندروید و 7% آنها فقط برای iOS ساخته شدند. به نظر میرسد این گروه از برنامه نویسان بیشتر در حال تست فلاتر بودند.
در این مطلب بررسی کردیم که فلاتر چیست و چه کاربردی دارد. Flutter یک فریم ورک یا Moblie SDK متن باز و رایگان بوده که توسط شرکت گوگل در سال 2017 معرفی و عرضه شده است. فلاتر از زبان برنامه نویسی دارت قدرت گرفته و به برنامه نویسان کمک میکند با یک زبان واحد (دارت) برای اندروید و آی اواس اپلیکیشن بسازند. همانطور که آینده زبان دارت در هالهای از ابهام قرار دارد، مشخص نیست فلاتر هم در آینده به چه سرنوشتی دچار شود. اما هنوز هم به خاطر مزایایی که دارد میتواند یک انتخاب ایدهآل برای ساخت برنامههای ساده و متوسط موبایلی باشد.