+ All Categories
Home > Documents > Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who...

Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who...

Date post: 03-Jun-2020
Category:
Upload: others
View: 15 times
Download: 0 times
Share this document with a friend
29
Building Mobile Apps with Angular2 & Ionic 2
Transcript
Page 1: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Building Mobile Apps with Angular2 & Ionic 2

Page 2: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Who Am I?

Alex MuramotoDev Advocate @ Ionic

@alexmuramoto [email protected] github.com/amuramoto

Page 3: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Hybrid. It's Awesome.

• Use Existing Web Skills

• Single Codebase

• Java is Terrible

• Hot-fixes - No Review

• Mostly Platform-Agnostic

• Objective-C is Gross

Page 4: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Devices Have Evolved!

Year Device Processor RAM2008 iPhone 3 620 MHz 128 MB 2010 iPhone 4 1 GHz 512 MB 2012 iPhone 5 1.3 GHz dual-core 1GB 2014 iPhone 6 1.4 GHz dual-core 1 GB 2016 iPhone 7 2.3 GHz quad-core 2 GB

Page 5: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

WebViews Have Evolved, Too!

WKWebView Chromium

Nitro V8

Page 6: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

So Awesome

• JIT Machine Code

• Native Scrolling

• Faster Rendering

• Faster Compute

• Latest Device APIsArt by Christopher Hastings

Page 7: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

JS for Mobile is Hard =(

• No Touch Events

• No Native UI Components

• No Performance Optimization

• No SDK

Page 8: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

No Style.

Page 9: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Not This Hard… But Hard

Page 10: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz
Page 11: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

What is Ionic?

• Hybrid mobile framework

• Built with AngularJS

• Written in Typescript

• Open Source - MIT License

• Built on Web/Browser Standards

ionicframework.com

Page 12: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Try It Out

$ npm install -g ionic cordova

$ ionic start myApp --v2

Page 13: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

UI Components

Page 14: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

UI Components

Page 15: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Theming

• Plain ol’ CSS + Sass

• Easy to override

• Variables based

• 80+ mixins

Page 16: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

ionicons

ionicons.com

• Cross-platform • MIT license• 900+ Icons

Page 17: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Ionic Native

• Access Native Device APIs

• Wraps Cordova Plugins

• Written in Typescript

• Adds Promises/Observables

• Framework Agnostic

github.com/driftyco/ionic-native

Page 18: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Ionic Native

Page 19: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Performance Obsessed

• Minimal DOM Manipulation

• Native Scrolling

• 60FPS Page Transitions

• Hardware Accelerated Animations

• Optimized for Touch Events

• AoT Compiling

Page 20: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Developers Love Ionic!

• 25K+ Stars

• #1 Typescript Project

• Top 50 Project

• Hundreds of Contributors

• 200K+ NPM Installs per Month

github.com/driftyco/ionic

Page 21: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Companies Love Ionic, Too!

Page 22: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Code Once. Run Everywhere.

One Team. One Codebase. Every Platform.

Page 23: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Code Once. Run Everywhere.

Page 24: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Ionic ViewTest. Share. Repeat.

view.ionic.io

$ ionic upload

App ID: 95FFA4ED

Page 25: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Deploying to a Device

• Enable Developer Options

• Enable USB Debugging

• Create Provisioning Profile

• Code Sign .IPA in Xcode

• npm install -g ios-deploy

• bit.ly/deploy-without-dev-account

Page 26: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Want More?

Docs ionicframework.com/docs/v2

Blog blog.ionic.io

Twitter@ionicframework

Even More Twitter!@ionitron

Page 27: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

Please Contribute!

Ionic Framework github.com/driftyco/ionic

Ionic Native github.com/driftyco/ionic-native

Ionic CLIgithub.com/driftyco/ionic-cli

Page 28: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz
Page 29: Building Mobile Apps with Angular2 & Ionic 2 · Building Mobile Apps with Angular2 & Ionic 2. Who Am I? Alex Muramoto Dev Advocate @ Ionic @alexmuramoto ... 2016 iPhone 7 2.3 GHz

[email protected]

Thank You, Humans.

@alexmuramoto

*beep*


Recommended