
سایت رسمی Ionic در مورد این فریم ورک این چنین نوشته است :
Ionic is the easiest way for web developers to build, grow, and scale cross-platform mobile apps. From our popular open source Framework, to our cloud Platform, our goal is to enable more people and organizations to create better apps, faster
پدید آورندگان Ionic در مورد تاریخچه این پدیده نوشته اند : ایونیک در سال ۲۰۱۲ تاسیس شد، زمانی که استفاده از تکنولوژی های وب به عنوان وسیله ای برای ساخت برنامه های نیتیو هنوز نوپا بود. وقتی ما شروع کردیم، فقط می خواستیم یک راه بهتر برای توسعه دهندگان وب ایجاد کنیم تا از مهارت های خود برای ایجاد برنامه های app stores استفاده کنند.
در هر صنعتی میلیون ها برنامه تلفن همراه توسط میلیون ها دولوپر در سراسر جهان با Ionic ساخته شده است. Framework و Cloud ایونیک به توسعه دهندگان اجازه استفاده از فن آوری های وب برای ساخت برنامه های تلفن همراه هیبریدی با کیفیت بالا را می دهد که به سادگی می تواند آن برنامه ها را با سرویس هایی مانند user auth و push notifications و live deployments مقیاس کند.
Ionic نه تنها توسعه برنامه را ساده تر، سریع تر و قابل دسترس تر می کند بلکه باعث می شود که توسعه برنامه سرگرم کننده تر شود. موبایل همه چیز در مورد یافتن راه های جدید برای تغییر نحوه ارتباط انسان با جهان است، و ما نمی توانیم به چیزی سرگرم کننده تر از آن فکر کنیم.
حالا که به طور کلی با ایده اولیه ساخت Ionic آشنا شدیم ، بهتر است دقیقا بدانیم …
Ionic چیست؟
آیونیک یک فریم ورک برای توسعه نرم افزار های موبایل است که از کتابخانه ی محبوب Angular js درست شده است. AngularJS یک کتابخانه MVC است که برای ساخت برنامه های تک صفحه ای برای وب و موبایل کاربرد دارد. فریم ورک ایونیک یک چارچوب برای توسعه اپلیکیشن های موبایل بدون دانستن جاوا است که هدف آن توسعه ی یک برنامه ترکیبی از چند زبان مختلف مثل HTML5 و CSS و javascript است
مزایای فریم ورک Ionic
- Ionic کاملا رایگان و متن باز است یعنی ساخت برنامه با پلت فرم های مختلف با این فریم ورک، بسیار ساده است.
- مزیت دیگر این فریم ورک همان UI پیش فرض زیباست. این فریم ورک کامپوننت های CSS و Javascript پیش فرضی را ارائه میدهد که بیشتر المان هایی است که شما برای ساخت یک اپلیکیشن موبایل نیاز دارین.
فریم ورک Ionic در اصل مجموعه ای از دایرکتیو های فریم ورک انگولار را (که شامل المان های سفارشی شده ی HTML می باشد) برای کامپوننت های خود ارائه می دهد که استفاده از widget ها را به سادگی نوشتن یک خط کد HTML می کند. علاوه بر دایرکتیوها، فریم ورک Ionic از شناساگر لمسی (touch gestures)، منطق انیمیشنی view، پاکیزگی HTML و ارتباطات ناهمگام انگولار نیز بهره می برد.
شما می توانید Ionic را بلافاصله پس از clone کردن یا استخراج کردن کتابخانه ی zip شده اش مورد استفاده قرار دهید، همچنین می توانید CLI آن را که مبتنی بر Node.js می باشد را نیز از طریق NPM نصب کرده و شروع به کار کنید.
اگرچه در حال حاضر فریم ورک انگولار (Angular JS) موتور اصلی فریم ورک Ionic می باشد اما برنامه نویسان آیونیک در تلاش برای گسترش پشتیبانی از سایر فریم ورک ها از جمله فریم ورک Knockout یا فریم ورک Ember.js هستند.
الگوی *MV
فریم ورک انگولار در ابتدا یک فریم ورک MVC بود اما با گذشت زمان به الگوی MVVM نزدیک شد که در این الگو شیء scope$ به عنوان یک ViewModel عمل می کند و از طریق عملکرد Controller تغییر داده می شود. برنامه نویسان با استفاده از این روش منعطف می توانند با توجه به نیاز ها یا علایق خود از MVC یا MVVM استفاده کرده و با هر دوی آنها نیز به یک هدف که همان “تفکیک نمایش از منطق کاری و در عین حال افزایش بازدهی و ماندگاری” می باشد، برسند.

دارای آیکون های مورد نیاز پروژه
فریم ورک ionic که از طریق ابزار SASS قابل سفارشی سازی می باشد، دارای متغیر ها و mixin های زیادی برای ارائه ی ظاهری customize شده می باشد. علاوه بر این، بسته بندی این فریم ورک به همراه کتابخانه ی اوپن سورس آیکون های آن می باشد که دارای بیش از ۴۴۰ آیکون مختلف می باشد که می توانید موارد دلخواه خود را از میان آن ها انتخاب کنید.
Widget ها
کامپوننت های فریم ورک Ionic به طور قدرتمندی ساده هستند. آن المان های سفارشی شده ی HTML می باشند که از اصول دایرکتیو های فریم ورک انگولار (Angular JS) پیروی می کنند. اما آیونیک Controller هایی را نیز ارائه می دهد که تکمیل کننده ی تنظیمات و تعاملات در اپلیکیشنتان می باشد. در حالی که برخی از فریم ورک ها ممکن است widget های پیچیده تری را ارائه دهند اما فریم ورک Ionic بلوک های سازنده ی ساده ای را ارائه می دهد که می توانند با یکدیگر ترکیب شوند تا رابط کاربری قدرتمندی را در اختیار کاربر قرار دهند. این فریم ورک به عنوان نسخه ی آلفای خود دارای تعداد زیادی از المان های form، نوار های هدر و فوتر، دکمه ها، لیستی ساده به همراه آیتم های قابل سفارشی سازی، المان های grid و غیره می باشد.
طراحی (Responsive (RWD
فریم ورک Ionic در درون خود از قوانین طراحی وب واکنش گرا یا responsive پیروی می کند تا تجربه ای بهینه را به عنوان مثال بر اساس اندازه ی صفحه نمایش یا تراکم پیکسل ها ارائه دهد. تمام سناریو های RWD که مختص یک اپلیکیشن خاص می باشد در آیونیک پذیرفته شده و به خوبی اجرا می شود.
پشتیبانی از اپلیکیشن های دسکتاپ
فریم ورک آیونیک که برای موبایل اپلیکیشن های hybrid ایجاد شده است (از طریق یک app store می توان بر روی دستگاه موبایل مورد نظر نصب کرد)، و برای ساخت وب سایت ها یا وب اپلیکیشن های دسکتاپی به کار نمی رود. در حالی که محتوا به خوبی نمایش داده می شود اما برای هدف مورد نظر نیز بهینه سازی می شوند. برنامه نویسانی که می خواهند اپلیکیشن هایی ایجاد کنند که با هر دو محیط مطابقت داشته باشد می توانند علاوه بر فریم ورک Angular JS از فریم ورک های Zurb Foundation، Twitter Bootstrap یا UI Library های مشابه استفاده کنند.
Plugin های خارجی
در حال حاضر هیچ plugin یا extension خارجی برای این فریم ورک در دسترس نمی باشد.
ابزار های سازنده
در تولید فریم ورک Ionic از ابزار Grunt استفاده شده است که آن را تبدیل به ابزار شماره ۱ جاوا اسکریپت کرده است که حالا جذابیت بیشتری برای استفاده در پروژه های مختلف دارد.
(Packaging (native
اپلیکیشن های Ionic نیاز به ابزار های خارجی برای packaging دارند. آنها با PhoneGap، Cordova و Trigger.io تست شده اند.
API دستگاه
فریم ورک Ionic از API های دستگاه پشتیبانی نمی کند.
امیدواریم که پس از مطالعه ی این مقاله، دانش مقدماتی در مورد فریم ورک hybrid ای (چند پلت فرمی) و قدرتمند موبایل بدست آورده باشید.