زبان های برنامه نویسی CROSS PLATFORM(کراس پلتفرم)

برای فهمیدن فریمورک یک مثال ساده میزنیم. فرض کنید شما خیاط هستین و با دست دکمه های لباس ها رو میدوزین که هم کار سختیه هم زمان بره ولی خب دیگه شما انجامش میدین. دوختن دکمه به لباس با دست میشه زبان برنامه نویسی. حالا فرض کنید شما با استفاده از یک دستگاه خاص بتونین در دقیقه ۱۰ تا دکمه رو به یه لباس بدوزین. اینجوری شما درسته دارین عمل دوختن دکمه رو انجام میدین اما سرعتتون بیشتره و هم این که انرژی کمتری ازتون میگیره این دستگاه دکمه زن میشه همون فریمورک. فریمورک ها در واقع برای کمک کردن به برنامه نویس ها ساخته میشن که سریع تر و راحت تر با زبان موردنظر کار کنن. فکر کنم دیگه کاملا براتون جا افتاده باشه! پس بزن بریم!فریمورک IONIC (آیونیک)میشه زبان آیونیک رو محبوب ترین فریمورک برنامه نویسی کراس پلتفرم دونست. این زبان بیشتر توسط تعدادی از شرکت های توسعه دهنده ی اپلیکیشن موبایل، برای تولید برنامه های کاربردی موبایل استفاده میشه. آیونیک یک فریمورک open sourceهست که لایسنس اون متعلق به MIT ست.قابلیت به کارگیری HTML، CSS و JAVASCRIPT در این فریمورک، دست developer ها رو در طراحی و تولید بهتر یک برنامه ی کراس پلتفرم بازتر می کنه. اگر در آیونیک از کدهای کاربردی Angular هم استفاده بشه، نتیجه ی کار خارق العاده خواهد شد. و در ضمن، کتابخانه ی ابزارها و اجزای این فریمورک بسیار غنی ست.فریمورک XAMARIN (زامارین)زامارین متعلق به شرکت مایکروسافت بوده و همانند IONIC منبع باز است. این فریمورک محیط توسعه، زبان و API های خاص خودش رو داره و برای تولید برنامه های نیتیو (native) هم به کار میره. زبان زامارین یکی از فریمورک های #C ست و بنابراین می تونه در پلتفرم های سرور هم کار کنه. در حقیقت زمانی که کمپانی ها توسعه دهندگان برنامه های نیتیو رو استخدام کردن، قابلیت های این فریمورک که مبتنی بر .net هست در بهبود کارایی و به روز رسانی برنامه ها کشف شد.( چه کشف خوبی هم بود )کدهای ایجاد شده در این فریمورک به راحتی قابل اجرا در انواع سیستم عامل ها هستند. در حال حاضر حدود ده هزار شرکت از این فریمورک برای تولید برنامه های کراس پلتفرم استفاده می کنن.فریمورک REACT NATIVE (ری اکت نیتیو)فریمورک ری اکت نیتیو کراس پلتفرم در سال 2013 توسط فیس بوک راه اندازی شد. از آن پس شرکت های توسعه دهنده ی اپلیکیشن موبایل اقدام به استخدام توسعه دهندگان native که می تونستند با این فریمورک Java script کار کنن نمودند. طراحی این فریمورک، به توسعه دهندگان این امکان رو داد که با به کارگیری اجزای REACT NATIVE یو آی قوی ای برای موبایل بسازن.یکی از مهمترین قابلیت های این فریمورک این است که امکان داشتن یک پیش نمایش از کدهای ذخیره شده را به توسعه دهندگان می دهد که بسیار سودمند است. همچنین با دارا بودن قابلیت Code reusability (استفاده ی مجدد از کدها) در کوتاه تر شدن زمان توسعه یک برنامه کراس پلتفرم تاثیر به سزایی داره و میشه کدهای پایه رو اشتراک گذاری کرد.فریمورک FLUTTER (فلاتر)فلاتر هم open source و واکنش گرا است که متعلق به شرکت گوگل است. این فریمورک برنامه های کراس پلتفرم، می تونه از موتورهای رندر 2D مثل موتور skia هم استفاده کنه. فلاتر یا Flutter جهت توسعه برنامه های کاربردی برای Android، iOS، Windows، Mac، Linux، Google Fuchsia و وب استفاده میشه. نسخه اول Flutter با نام رمزگذاری شده “Sky” شناخته شد و روی سیستم عامل اندروید اجرا شد. این برنامه در اجلاس برنامه نویس Dart 2015 رونمایی شد، با هدف اعلام شده که قادر به ارائه مداوم با سرعت 120 فریم در ثانیه است.فریمورک متن باز فلاتر توسط گوگل برای اولین در سال ۲۰۱۷ رونمایی شد. این فریمورک به برنامه نویسان و توسعه دهندگان این امکان رو میده که با یک بار نوشتن کد خروجی مخصوص اندروید و iOS برای اپلیکیشن خودشون بگیرن. در حال حاضر فلاتر امکان طراحی برنامه برای تمام پلتفرم های موبایل، وب و دسکتاپ رو داره. نکته مثبت Flutter نسبت به فریموورک های چند سکویی مثل زامارین و فون گپ خروجی Native اپلیکیشن هست. به عبارت دیگه میان اپلیکیشن اندرویدی که با فلاتر توسعه داده میشود یا جاوا هیچ فرقی وجود نداره.زبان مورد استفاده در فریموورک Flutter زبان توسعه یافته توسط گوگل به نام دارت Dart هست که یک زبان شی گرا و سطح بالا با شباهت به جاوا ست. همچنین گوگل اطلاع داده که در آینده زبان دارت و Flutter به عنوان بستر اصلی توسعه برای سیتسم عامل فیوشا مورد استفاده قرار خواهد گرفت.