دلایل برتری Ionic2 نسبت به Ionic1


در این مقاله قراره در مورد هفت علت که باعث ارجعیت Ionic 2 نسبت به Ionic 1 میشن صحبت کنیم . خب همه ما همیشه سعی میکنیم تا به محض انتشار تکنولوژی های جدید خودمون رو با اون وفق بدیم و این غیر ممکنه تمام زندگیمون رو بخوایم از یک مهارت استفاده کنیم ، خب طبیعتا روز به روز تکنولوژی در حال پیشرفت هست و این ما هستیم که باید خودمون رو با اون سازگار کنیم. خب در ادامه در مورد دو پاراگرافی که در پایین نوشته شده صحبت میکنیم :
- انگولار 2 نسبت به نسخه قبلی خودش پیشرفت های زیادی داشته و همچنان هم در حال پیشرفت هست ، مخصوصا در زمینه اپلیکیشن های موبایل ، پس نیاز به یک فریمورک جدید مثل ionic2 احساس میشد .
- استفاده از آیونیک 1 ، در نسخه قدیمی تر انگولار باعث میشه علاوه بر نتایج ضعیف تری که به دست می آوریم ، زمان و تلاش بیشتری رو هم صرف کنیم .
از بین این دو پاراگراف ، من گزینه اول انتخاب می کنم . گرچه تیم آیونیک در هرصورت به پشتیبانی از ایونیک1 برای مدت طولانی ادامه میده . به محض انتشار آیونیک 2 ، زمان زیادی صرف یادگیریش کردم و به عمق جنبه های زیادی از این فریمورک پی بردم و میتونم با اطمینان بهتون بگم آیونیک 2 از آینویک 1 بهتر هست .
آیونیک 2 از نظر مفهومی شباهت زیادی به آیونیک 1 داره . در آیونیک 1 ، شما کنترل کننده و یا قالب هایی داشتید که دید شمارو مشخص میکرد.آیونیک 2 هم به همین صورت هست فقط شما به جای استفاده از کنترل کننده ها از کلاس ها استفاده میکنید، البته در سینتکس قالب تفاوت کمتری وجود داره . در هر صورت مفاهیم همچنان یکی هست . خب بریم سراغ هفت دلیل برتری آیونیک 2 نسبت به آیونیک 1 .
-
سازمان و ساختار
در آیونیک 2 ، هر کامپوننت در برنامه شما ، فولدرخاص خودش با فایل کلاس خودش ، فایل تمپلت و فایل استایل رو داره . این باعث میشه همه چیز مرتب و منظم نگه داشته بشه ، همچنین ویژگی هایی که میسازید رو ماژولار میکنه . من یک برنامه رو با آیونیک 2 ساختم ، بعد اون برنامرو در یک tab در برنامه دیگری بردم و تمام اجزای مرتبطو کپی کردم و همه چیز به خوبی کار کرد . همچنین یک سرویس گوگل مپ ساختم که به راحتی میتونم در هر برنامه ای که بخوام ازش استفاده کنم . در آیونیک 1 میتونیم تنبل باشیم و فقط یک کنترل کننده بسازیم که میتونه منطق رو در چند صفحه مختلف از برنامم در دست بگیره اما در آیونیک 2 واقعا نمیتونیم ازین دست کارهارو انجام بدیم .
-
ابزار و تجهیزات
یکی از دستورهای مورد علاقه من در آیونیک 2 به صورت زیر هست :
1 |
ionic generate page MyPage |
که میتونم به شکل زیر کوتاهش کنم :
1 |
ionic g page MyPage |
با (ionic 2 CLI) شما میتونید به صورت خودکار ، صفحات ، providers ، pipe ، اجزا و دستور دهنده ها رو تولید کنید و رابط متنی آیونیک2 تمامی فایل های مورد نیاز شما و برخی از کد هارو براتون تنظیم میکنه .
پس زمانی که یک پروژه جدید شروع میکنم ، میتونم حدودا 8-7 دستور مختلفو اجرا کنم و نصف برنامه برام ساخته میشه . پس میتونم خیلی از چیز ها مثل ذخیره کردن فایل های جدید و تنظیم ساختار اولیه رو رد کنم و خیلی سریع به سراغ مسائل اصلی برم . این مورد برای تازه کارها عالیه چون این دیدو بهتون میده که فایل ها به چه صورتی باشند .
-
مسیریابی
مسیریابی در آیونیک 2 با مسیر یابی در آیونیک 1 تفاوت های زیادی داره . در آیونیک 1 ، مسیر یابی با استفاده از URL ها تعریف می شد . برای مثال :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
.config(function($stateProvider, $urlRouterProvider) { $stateProvider .state('intro', { url: '/', templateUrl: 'templates/intro.html', controller: 'IntroCtrl' }) .state('main', { url: '/main', templateUrl: 'templates/main.html', controller: 'MainCtrl' }); $urlRouterProvider.otherwise("/"); }); |
و خب این حالت رو با لینک شدن به اونها فعال میکردید . در آیونیک 2 رویکرد native استفاده میشه .
1 |
this.nav.push(MyPage); |
خب بیشتراز این وارد جزییات نمیشم . شما میتونید یک صفحه رو در پشته مسیریابی push کنید و همچنین میتونید اون رو pop کنید تا از پشته مسیریابی حذف بشه و به صفحه قبل برگردید . دقیقا مثل push و pop کردن در آرایه ها .
-
سینتکس قالب
سینتکس قالب در آیونیک 1 و 2 شبیه بهم هستش . به نظر من سینتکس قالب در آیونیک 2 تمیز تر است . نگاهی به چند تا مثال بندازیم :
آیونیک 1 :
1 |
<imgng-src="{{photo.image}}"/> |
آیونیک 2 :
1 |
img[src]="photo.image" /> |
تفاوت در اینجا واقعا قابل چشم پوشیه ، اما کد دومی قطعا تمیز تره . مزیت دیگه ای که آیونیک 2 داره این هست که به راحتی میتونیم کنترل کننده کلیک رو به هر رخدادی بخوایم تغییر بدیم . تغییرات کوچکی زیادی شبیه به این مورد وجود داره ، که در اینجا بیشتر در موردش صحبت نمیکنیم .
-
جاوا اسکریپت
در انگولار 1 و آیونیک 1 سینتکس های جدید و خاص زیادی وجود داشت که باید یاد میگرفتیم . اما ایونیک2 ، همون جاوا اسکریپت هست . هر چیزی که میسازید ، اساسا بر اساس استاندارد های ES6 هست . راستی به زودی آموزش های مربوط به es6 به صورت کاملا رایگان توی وب سایت بارگزاری میکنیم . در ایونیک 2 از ES6 استفاده میکنیم . در حال حاضر ES6 توسط همه مرورگرها پشتیبانی نمیشه ، اما آیونیک 2 کد شمارو زمانی که ساخته میشه تبدیل به کد ES5 میکنه . در دوره آموزش ES6 به طور کامل در مورد ویژگی های که به جاوا اسکریپت اضافه شده و کار مارو خیلی راحت تر و ساده تر کرده صحبت میکنیم . این دوره رو میتونید از وب سایت reactapp.ir از این لینک دانلود کنید .
-
در انتها ، ساختن برنامه
در ایونیک 2 ، تقریبا تمام کد های شما در داخل فولدر app انجام میشه ، که به طور کامل از فولدر www جداست . این فولدر شامل کدی هست که در اختیار مرورگر قرار داره ، زمانی که یک برنامه آیونیک 2 اجرا کنیم ، کدی که داخل فولدر app هست به طور خودکار به یک فایل جاوا اسکریپت تبدیل میشه که در فولدر www کپی شده .
و در پایان :
به همه پیشنهاد میکنم که از آیونیک 2 استفاده کنند و شاید سوال پیش بیاد که چه زمانی ؟ پیشنهاداتمو به طور خلاصه میگم :
- اگه شما در آیونیک تازه کار هستین ، با آیونیک 2 شروع کنید که هم سرعت کار باهاش خیلی بالاتر هست و هم به قدری مناسب هست تا در هر پروژه ای ازش استفاده بشه.
- اگه از آیونیک 1 استفاده میکنید و تصمیم دارید یک پروژه جدیدی رو شروع کنید که پیچیده هست و نیازه تا زودتر منتشربشه ، از آیونیک 1 استفاده کنید ، اما خب اگه فرصت دارید حتما از آیونیک 2 استفاده کنید . این نوشته برداشت من از مقاله ای بود که توی وب سایت joshmorony.com خونده بودم ، امیدوارم به دردتون بخوره .
دیدگاهتان را بنویسید