javantura v3 - ionic framework in production environment – stjepan Žužul
Upload: hujak-hrvatska-udruga-java-korisnika-croatian-java-user-association
Post on 08-Jan-2017
2.403 views
TRANSCRIPT
Stjepan Žužul | Full stack developer S2IS | – Javantura 20.02.2016 Zagreb
IONIC IN PRODUCTION ENVIRONMENT
„Code once run every where” Portability of code Cheaper development cost Simpler and cheaper maintenance. HTML – Javascript - CSS – jQuery
PURPOSE OF HYBRID ARCHITECUTRE
CORDOVA APP ARCHITECTURE
Application for airplain crew memebers. Geo positioning, Crew member checkin, monthly schedule, notifications for different
backend events, campaigns, refresh state machine logic. Duplex communication crew member - administration.
Super sexy look and feel Smooooth animations and transitions between screens Native app in JS + CSS3 way Application UI logic Support for Ios/Android/Web browsers
PROJECT DEMANDS
One of the top 5 American airline company18.000 employees, 6.000 crew membersFleet of 220 airplanesRevenue in 2014 cca 5.000 bil. $High demand customer
CUSTOMER
Huge angular js and ionic community among others open source platforms.
(EmberJS, BB + JQM, Onsen) or separate js libraries. Ionic monthly releases after alfe release + extra ionic services that help
you in development huge community support + extra libs: Ng – cordova Fast prototyping (Ionic gave us the best UI – results in prototyping phase)Kendo UI
WHY WE TAKE I+A IN 2015
Performance - solved Dirty watching Screen transitions, animations Dom rendering + caching
Compatibility for different device screen resolutionsCompatibility for different browsers. New components that are not in scope of ionic components /
according the design. Or someone from management / pilots.
PROBLEMS VOL. 1
Cordova plugins Doesn’t work as expected
New platform versions arrivingComplexity of Angulara 1.xMemory leaks
PROBLEMS VOL. 2
Duration – 7 months, 2 months extra over planed schedule. Ipad app on IOS-om 7.X 8.X 9.X in first production version – cca 10.000
lines of code. Extra app has being developed for recreating test use cases.15 people worked on project. Production without hot fixes – all bugs in production has being qualified
as low level risks and fixes were postponed for next production release. Management and customer was satisfied.
SUMMA SUMMARUM OF THE PROJECT
If you need to choose hybrid framework today with fixed end date in nearest future. Don’t choose Ionic platform which is in first beta release and unreliable at the moment for complex business apps.
Alternatives React mobile – FB library. Nativescript + Angular 2.0. Meteor Js + Angular 2.0
If you are in prototype phase and first run isn’t mission critical choose Ionic framework. Angular 2.0 is going to be a leader of JS frameworks in 2016.
LESSON LEARNED - 1
Hybrid development is never code once run everywhere, it is code once adopt everywhere, prepare your management for that.
If you are develop app for the customers define the app os versions and device sizes that are going to support in post production phase. My recommendation is that you choose last 2 major versions, believe me, your life is going to be easier.
Hire senior developers with experience in hybrid mobile development. Developers with HTML + JS + Jquery skills are out of scope for hybrid mobile job.
If you don’t know how to profile JS aps find someone who does, so you can mitigate the risks of app being refused in app store because of memory leaks.
Focus your development on IOS, Android and Web platforms only.
LESSON LEARNED - 2
LESSON LEARNED– 3 WINDOWS PLATFORM
http://info.meteor.com/blog/comparing-performance-of-blaze-react-angular-meteor-and-angular-2-with-meteor
https://auth0.com/blog/2016/01/11/updated-and-improved-more-benchmarks-virtual-dom-vs-angular-12-vs-mithril-js-vs-the-rest/#results-link
PERFORMANCE BENCHMARKS
https://angular.io/docs/ts/latest/tutorial/ http://www.joshmorony.com/blog/ http://mcgivery.com/ http://www.gajotres.net/ http://www.johnpapa.net/ http://victorsavkin.com/post/118372404541/the-core-concepts-of-angu
lar-2
TUTORIALS, PATTERNS, BLOGS
QUESTIONS
Stjepan Žužul Full stack developer S2IS
Javantura 20.02.2016 ZagrebEmail: [email protected]
Web: s2is.hrLinked In:
https://hr.linkedin.com/in/stjepanzuzul
THANK YOU FOR YOUR TIME