I have recently published 3 App for Android and iOS written using Ionic 2, and it’s time for a review about Ionic 2.
Ionic 2 is a major updated to Ionic 1, and at the moment I can say that the update has taken only positive aspects. In the past I delivered only 2 Apps using Ionic 1 and my feedback about it was:
- Lot of boilerplate code required
- Navigation between pages too messy
- Hard to maintain in the long period
Ionic 2 instead is another world:
- Very good architecture (thanks to Angular 2)
- The changes applied by Ionic 2 to Angular 2 have a complete sense and are well designed
- Very simple to maintain in the long period
One of the App I published using Ionic 2 is composed of 98 pages, it uses JSON Web Token for authentication, it talks to 18 different micro services and it works on Smartphones and Tablet (the tablet version after the new SplitView released in beta three weeks ago). This App will increase in the next few months and probably it will be composed of about 250/300 pages (it’s an App to maintain the data for another App used by operators on the road and to see and analyze the data acquired); the .APK file size is right now 6.3 MB (1.3 MB are coming from images alone).
The interesting part is that once you have understood the meaning of the following files
you can write Apps with a speed I have never reached before.
How many tools allow you to create an App for iOS and Android in only 3 hours ? During the three hours on a Tuesday evening I created an App for a conference composed by
- 19 pages
- Containing the full biography and pictures for each speaker and artist (I did only copy and paste from a Word document adding HTML code for a better display)
- 24 MB of images (only the preparation of the images required 1.5 hours)
- Updates released by CodePush (used to correct the last minutes changes of the events)
The App has been released on Google Play Store on Tuesday evening and on Thursday afternoon it was reviewed and available on the Apple Store.
Not bad at all !!! Probably this was my personal world record as the quickest developer of mobile Apps.
The best aspect of Ionic 2/ Angular 2 is that once you have learnt how to create Apps, you can improve it’s quality using Pipes and Components, so you can effectively reduce the amount of code inside each page and have a simpler but more powerful html page.
I cannot conclude this post without adding the only thing missing in the framework: testing !
At the moment there isn’t an official testing tool integrated in the framework and this is the only thing I’m waiting.
Is Ionic 2 the perfect solution to write all the Apps ? I don’t think so, because at the moment I’m still thinking that native Apps are better when there is the need of a massive data input, so for this reason I will start to check if NativeScript or React Native are better alternative to full native apps.