SlideShare una empresa de Scribd logo
1 de 22
Hybrid Mobile Application Development
Starting >> Ionic 2 & Angular 2
Hybrid Mobile Application Development
Starting >> Ionic 2 & Angular 2
Nikhil Kumar | Software Consultant
KnÓldus Software LLP
Nikhil Kumar | Software Consultant
KnÓldus Software LLP
AgendaAgenda
● What is hybrid mobile application : The Concept
● What is IONIC Framework
● Ionic 1 vs Ionic 2: A Comparison
● Ionic 2 & Angular 2
● Going Into IONIC world
● Designing in IONIC
● What is Apache Cordova
● Get Into Cordova
● Demo
-Hybrid apps are like anyother app you'll find in your phone.
-Hybrid mobile apps are built with a combination of web technologies like
HTML, CSS, and JavaScript...
From users view: It doesn't matter if wine tastes well.
-The key difference is that hybrid apps are hosted inside a native
application that utilizes a mobile platform’s WebView.
-Today, most hybrid mobile applications leverage Apache Cordova.
-Hybrid apps are like anyother app you'll find in your phone.
-Hybrid mobile apps are built with a combination of web technologies like
HTML, CSS, and JavaScript...
From users view: It doesn't matter if wine tastes well.
-The key difference is that hybrid apps are hosted inside a native
application that utilizes a mobile platform’s WebView.
-Today, most hybrid mobile applications leverage Apache Cordova.
The Concept
What – Why – Where – coming slides...
Motivation for HybridMotivation for Hybrid
Hybrid mobile applications provide a way for developers to re-use their existing skills in web
development.
WHY
Hybrid mobile application development looks appealing to an organization’s. Why hire a
developer for each platform when you can hire one developer and target all of them through
HTML, CSS, and JavaScript? But Reality is???
When should you build a hybrid mobile app?
● Which mobile platforms do you wish to target?
● Do you want to distribute your application via app stores?
● Are you looking to utilize the capabilities of the mobile
device?
● What are the technical abilities of your development
team?
● Does the one-size-fit-all approach of hybrid really live up
to its promise?
When should you build a hybrid mobile app?
● Which mobile platforms do you wish to target?
● Do you want to distribute your application via app stores?
● Are you looking to utilize the capabilities of the mobile
device?
● What are the technical abilities of your development
team?
● Does the one-size-fit-all approach of hybrid really live up
to its promise?
Examples of Hybrid ApplicationsExamples of Hybrid Applications
Insta
untappd
yelp
FitFyles
http://showcase.ionicframework.com/
Drifty: Ben Sperry and Max Lynch- 2012
Ionic: 2013
­ Developers have created 500,000 apps
­ 15,000 stars on GitHub and has risen to become one of the top 40 
   most popular projects worldwide, notes Lynch. 
Drifty: Ben Sperry and Max Lynch- 2012
Ionic: 2013
­ Developers have created 500,000 apps
­ 15,000 stars on GitHub and has risen to become one of the top 40 
   most popular projects worldwide, notes Lynch. 
Ionic : A Large scale overview
Drifty, a company that has been making it possible for web developers to build 
and publish native mobile applications that can then be published to the major 
app stores, including Apple’s iTunes, Amazon’s Appstore and Google Play, has 
now raised an additional $2.6 million led by Lightbank in Chicago.
Ionic is the open source HTML5 Mobile Framework for building amazing, cross-platform
hybrid native apps and mobile websites with HTML, JavaScript, and CSS. If you know
how to build or design websites, you will be able to build a real mobile app with Ionic!
Ionic is the open source HTML5 Mobile Framework for building amazing, cross-platform
hybrid native apps and mobile websites with HTML, JavaScript, and CSS. If you know
how to build or design websites, you will be able to build a real mobile app with Ionic!
Ionic Framework
Ionic 2 Vs Ionic1Ionic 2 Vs Ionic1
Ionic 2 is currently in beta and is being actively devleoped
At a high level, Ionic 2 is very similar conceptually to Ionic 1. In Ionic 1 you have
controllers that hold your logic, and templates that define your views. Ionic 2 is the same,
except you have classes instead of controllers. There are some differences in the
template syntax, and a lot of differences in the class structure.
So, let’s jump into some specifics. Here’s 5 reasons why I think Ionic 2 is better than Ionic 1.So, let’s jump into some specifics. Here’s 5 reasons why I think Ionic 2 is better than Ionic 1.
1- Organisation and Structure1- Organisation and Structure
home
home.js
home.html
home.scss
about
about.js
about.html
about.scss
Of course, you could organise your Ionic 1 projects like this as well, but
it wasn’t really the default style that was used. It would require prior
knowledge and motivation to achieve a sensible and scalable structure
like this in Ionic 1.
but in Ionic 2 you can’t really do that.
2- Tooling : it's simple but one of my favorate
$ ionic generate page MyPage
which can also be shortened to:
$ ionic g page MyPage
● my-page
my-page.js
my-page.html
my-page.scss
3- Navigation3- Navigation
Navigation in Ionic 2 is very different to Ionic 1. In Ionic 1 navigation was defined using URLs,
for example:
.config(function($stateProvider, $urlRouterProvider) {.config(function($stateProvider, $urlRouterProvider) {
$stateProvider$stateProvider
.state('intro', {.state('intro', {
url: '/',url: '/',
templateUrl: 'templates/intro.html',templateUrl: 'templates/intro.html',
controller: 'IntroCtrl'controller: 'IntroCtrl'
})})
.state('main', {.state('main', {
url: '/main',url: '/main',
templateUrl: 'templates/main.html',templateUrl: 'templates/main.html',
controller: 'MainCtrl'controller: 'MainCtrl'
});});
$urlRouterProvider.otherwise("/");$urlRouterProvider.otherwise("/");
});});
and you would activate these states by linking to them, which is a very “web” approach. In Ionic 2 a more “native” approach is used where
pages are “pushed” and “popped”:
this.nav.push(MyPage);
4. It’s Just Javascript4. It’s Just Javascript
In Angular 1 and Ionic 1 there was a lot of framework specific terminology and syntax to learn, but
with Ionic 2 it’s basically just plain old (or rather new) Javascript. Everything you build is basically
just ES6 (or TypeScript if you prefer) code, which isn’t specific to any framework. It’s just
Javascript.
The benefit of this is that everything you learn when
building Ionic 2 application isn’t just going to help you
build Ionic 2 applications, it’s also going to help you be
a better Javascript developer in general. The skills you
develop with Ionic 2 are going to be.
able to be applied in a bunch of other places as ES6
eventually becomes the new “normal” Javascript.
5. Building5. Building
In Ionic 2 almost all of your coding will be done inside of
the app folder,
which is completely separate to the www folders.
Folder StructureFolder Structure
If you’re not familiar with Ionic 2, it’s the latest incarnation
of Ionic – “the world’s most popular cross-platform mobile
development technology.”
Summary of comparisonSummary of comparison
Without a doubt, I would recommend everybody switch to Ionic 2
- If you’re completely new to Ionic, start with Ionic 2
- If you’re using Ionic 1 for existing projects, stick with Ionic 1 and upgrade it later
- If you’re using Ionic 1 and starting a new project, use Ionic 1 if it is a mission critical
or complex application
Ionic-2 Compotnents
checkout
Ionic-2 Compotnents
checkout
Going Into Ionic world
Ionic 1Ionic 1
- npm install -g ionic
- ionic start myproject
- adding platform
- adding plugings etc
Building for iOSBuilding for iOS
-ionic platform add ios
Building for AndroidBuilding for Android
- ionic platform add android
Ionic 1Ionic 1
- npm install -g ionic
- ionic start myproject
- adding platform
- adding plugings etc
Building for iOSBuilding for iOS
-ionic platform add ios
Building for AndroidBuilding for Android
- ionic platform add android
Quick Start
The default templates name are below:
● tabs (Default)
● sidemenu
● maps
● salesforce
● tests
● complex-list
● blank
Ionic 2Ionic 2
- npm install -g ionic@beta
- ionic start cutePuppyPics –v2 --ts
- cd cutePuppyPics
- ionic serve
Adding platforms is same...
Ionic 2Ionic 2
- npm install -g ionic@beta
- ionic start cutePuppyPics –v2 --ts
- cd cutePuppyPics
- ionic serve
Adding platforms is same...
IONIC CREATORIONIC CREATORIONIC CREATORIONIC CREATOR
Ionic Designing Magic & Cloud
IONIC APPSIONIC APPS
Today, most hybrid mobile applications leverage Apache Cordova.
Ionic builds on top of Cordova
Apache Cordova takes care of packaging your HTML5 app as a native
app that can run in Android, iOS, and other platforms.
But if you simply take an existing website and package it as a mobile app
the result will look nothing like a native app: users will notice very quickly
that the styles and behaviours are pretty different.
Today, most hybrid mobile applications leverage Apache Cordova.
Ionic builds on top of Cordova
Apache Cordova takes care of packaging your HTML5 app as a native
app that can run in Android, iOS, and other platforms.
But if you simply take an existing website and package it as a mobile app
the result will look nothing like a native app: users will notice very quickly
that the styles and behaviours are pretty different.
Apache Cordova
ngCordova comes with over 70 native Cordova plugins that you
can easily add to your Angular Cordova apps. Choose the plugin
you’d like to use from the menu, which will have information on
which plugin you need to install and an example of how to use it in
your Angular code.
Checkout : The game begins...
ngCordova comes with over 70 native Cordova plugins that you
can easily add to your Angular Cordova apps. Choose the plugin
you’d like to use from the menu, which will have information on
which plugin you need to install and an example of how to use it in
your Angular code.
Checkout : The game begins...
Into Cordova
References
● Knoldus Blog [Offcial]
● Telerik Documentation [Official]
● Cordova Documentation [Official]
● Ionic Framework Documentation [Official]
Presenter
nikhil@knoldus.com
Presenter
nikhil@knoldus.com
Organizer
@Knolspeak
http://www.knoldus.com
http://blog.knoldus.com
Organizer
@Knolspeak
http://www.knoldus.com
http://blog.knoldus.com
Thanks

Más contenido relacionado

Destacado

Introduction to Ionic framework
Introduction to Ionic frameworkIntroduction to Ionic framework
Introduction to Ionic frameworkShyjal Raazi
 
HTML5, CSS, JavaScript Style guide and coding conventions
HTML5, CSS, JavaScript Style guide and coding conventionsHTML5, CSS, JavaScript Style guide and coding conventions
HTML5, CSS, JavaScript Style guide and coding conventionsKnoldus Inc.
 
Functional programming in Javascript
Functional programming in JavascriptFunctional programming in Javascript
Functional programming in JavascriptKnoldus Inc.
 
Introduction to BDD
Introduction to BDDIntroduction to BDD
Introduction to BDDKnoldus Inc.
 
Deep dive into sass
Deep dive into sassDeep dive into sass
Deep dive into sassKnoldus Inc.
 
Building an Ionic hybrid mobile app with TypeScript
Building an Ionic hybrid mobile app with TypeScript Building an Ionic hybrid mobile app with TypeScript
Building an Ionic hybrid mobile app with TypeScript Serge van den Oever
 
Akka Finite State Machine
Akka Finite State MachineAkka Finite State Machine
Akka Finite State MachineKnoldus Inc.
 
TypeScript - Angular 2 - ionic 2
TypeScript - Angular 2 - ionic 2TypeScript - Angular 2 - ionic 2
TypeScript - Angular 2 - ionic 2Micael Gallego
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkCihad Horuzoğlu
 
Mobile Day - Ionic 2
Mobile Day - Ionic 2Mobile Day - Ionic 2
Mobile Day - Ionic 2Software Guru
 
Mandrill Templates
Mandrill TemplatesMandrill Templates
Mandrill TemplatesKnoldus Inc.
 
Fast dataarchitecture
Fast dataarchitectureFast dataarchitecture
Fast dataarchitectureKnoldus Inc.
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application developmentKnoldus Inc.
 
Introduction to Knockout Js
Introduction to Knockout JsIntroduction to Knockout Js
Introduction to Knockout JsKnoldus Inc.
 
Lambda Architecture with Spark
Lambda Architecture with SparkLambda Architecture with Spark
Lambda Architecture with SparkKnoldus Inc.
 
Cassandra - Tips And Techniques
Cassandra - Tips And TechniquesCassandra - Tips And Techniques
Cassandra - Tips And TechniquesKnoldus Inc.
 
Introduction to Apache Cassandra
Introduction to Apache Cassandra Introduction to Apache Cassandra
Introduction to Apache Cassandra Knoldus Inc.
 
Getting started with typescript and angular 2
Getting started with typescript  and angular 2Getting started with typescript  and angular 2
Getting started with typescript and angular 2Knoldus Inc.
 

Destacado (20)

Introduction to Ionic framework
Introduction to Ionic frameworkIntroduction to Ionic framework
Introduction to Ionic framework
 
HTML5, CSS, JavaScript Style guide and coding conventions
HTML5, CSS, JavaScript Style guide and coding conventionsHTML5, CSS, JavaScript Style guide and coding conventions
HTML5, CSS, JavaScript Style guide and coding conventions
 
Functional programming in Javascript
Functional programming in JavascriptFunctional programming in Javascript
Functional programming in Javascript
 
Introduction to BDD
Introduction to BDDIntroduction to BDD
Introduction to BDD
 
Ionic Framework
Ionic FrameworkIonic Framework
Ionic Framework
 
Deep dive into sass
Deep dive into sassDeep dive into sass
Deep dive into sass
 
Building an Ionic hybrid mobile app with TypeScript
Building an Ionic hybrid mobile app with TypeScript Building an Ionic hybrid mobile app with TypeScript
Building an Ionic hybrid mobile app with TypeScript
 
Akka Finite State Machine
Akka Finite State MachineAkka Finite State Machine
Akka Finite State Machine
 
TypeScript - Angular 2 - ionic 2
TypeScript - Angular 2 - ionic 2TypeScript - Angular 2 - ionic 2
TypeScript - Angular 2 - ionic 2
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic Framework
 
How to setup ionic 2
How to setup ionic 2How to setup ionic 2
How to setup ionic 2
 
Mobile Day - Ionic 2
Mobile Day - Ionic 2Mobile Day - Ionic 2
Mobile Day - Ionic 2
 
Mandrill Templates
Mandrill TemplatesMandrill Templates
Mandrill Templates
 
Fast dataarchitecture
Fast dataarchitectureFast dataarchitecture
Fast dataarchitecture
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application development
 
Introduction to Knockout Js
Introduction to Knockout JsIntroduction to Knockout Js
Introduction to Knockout Js
 
Lambda Architecture with Spark
Lambda Architecture with SparkLambda Architecture with Spark
Lambda Architecture with Spark
 
Cassandra - Tips And Techniques
Cassandra - Tips And TechniquesCassandra - Tips And Techniques
Cassandra - Tips And Techniques
 
Introduction to Apache Cassandra
Introduction to Apache Cassandra Introduction to Apache Cassandra
Introduction to Apache Cassandra
 
Getting started with typescript and angular 2
Getting started with typescript  and angular 2Getting started with typescript  and angular 2
Getting started with typescript and angular 2
 

Más de Knoldus Inc.

Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML ParsingMastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML ParsingKnoldus Inc.
 
Akka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On IntroductionAkka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On IntroductionKnoldus Inc.
 
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptxEntity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptxKnoldus Inc.
 
Introduction to Redis and its features.pptx
Introduction to Redis and its features.pptxIntroduction to Redis and its features.pptx
Introduction to Redis and its features.pptxKnoldus Inc.
 
GraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdfGraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdfKnoldus Inc.
 
NuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptxNuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptxKnoldus Inc.
 
Data Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable TestingData Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable TestingKnoldus Inc.
 
K8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose KubernetesK8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose KubernetesKnoldus Inc.
 
Introduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptxIntroduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptxKnoldus Inc.
 
Robusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptxRobusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptxKnoldus Inc.
 
Optimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptxOptimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptxKnoldus Inc.
 
Azure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptxAzure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptxKnoldus Inc.
 
CQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptxCQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptxKnoldus Inc.
 
ETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake PresentationETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake PresentationKnoldus Inc.
 
Scripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics PresentationScripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics PresentationKnoldus Inc.
 
Getting started with dotnet core Web APIs
Getting started with dotnet core Web APIsGetting started with dotnet core Web APIs
Getting started with dotnet core Web APIsKnoldus Inc.
 
Introduction To Rust part II Presentation
Introduction To Rust part II PresentationIntroduction To Rust part II Presentation
Introduction To Rust part II PresentationKnoldus Inc.
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Configuring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRAConfiguring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRAKnoldus Inc.
 
Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)Knoldus Inc.
 

Más de Knoldus Inc. (20)

Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML ParsingMastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
 
Akka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On IntroductionAkka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On Introduction
 
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptxEntity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptx
 
Introduction to Redis and its features.pptx
Introduction to Redis and its features.pptxIntroduction to Redis and its features.pptx
Introduction to Redis and its features.pptx
 
GraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdfGraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdf
 
NuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptxNuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptx
 
Data Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable TestingData Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable Testing
 
K8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose KubernetesK8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose Kubernetes
 
Introduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptxIntroduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptx
 
Robusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptxRobusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptx
 
Optimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptxOptimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptx
 
Azure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptxAzure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptx
 
CQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptxCQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptx
 
ETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake PresentationETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake Presentation
 
Scripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics PresentationScripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics Presentation
 
Getting started with dotnet core Web APIs
Getting started with dotnet core Web APIsGetting started with dotnet core Web APIs
Getting started with dotnet core Web APIs
 
Introduction To Rust part II Presentation
Introduction To Rust part II PresentationIntroduction To Rust part II Presentation
Introduction To Rust part II Presentation
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Configuring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRAConfiguring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRA
 
Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)
 

Último

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 

Último (20)

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

Ionic 2 with Angular 2

  • 1. Hybrid Mobile Application Development Starting >> Ionic 2 & Angular 2 Hybrid Mobile Application Development Starting >> Ionic 2 & Angular 2 Nikhil Kumar | Software Consultant KnÓldus Software LLP Nikhil Kumar | Software Consultant KnÓldus Software LLP
  • 2. AgendaAgenda ● What is hybrid mobile application : The Concept ● What is IONIC Framework ● Ionic 1 vs Ionic 2: A Comparison ● Ionic 2 & Angular 2 ● Going Into IONIC world ● Designing in IONIC ● What is Apache Cordova ● Get Into Cordova ● Demo
  • 3. -Hybrid apps are like anyother app you'll find in your phone. -Hybrid mobile apps are built with a combination of web technologies like HTML, CSS, and JavaScript... From users view: It doesn't matter if wine tastes well. -The key difference is that hybrid apps are hosted inside a native application that utilizes a mobile platform’s WebView. -Today, most hybrid mobile applications leverage Apache Cordova. -Hybrid apps are like anyother app you'll find in your phone. -Hybrid mobile apps are built with a combination of web technologies like HTML, CSS, and JavaScript... From users view: It doesn't matter if wine tastes well. -The key difference is that hybrid apps are hosted inside a native application that utilizes a mobile platform’s WebView. -Today, most hybrid mobile applications leverage Apache Cordova. The Concept What – Why – Where – coming slides...
  • 4. Motivation for HybridMotivation for Hybrid Hybrid mobile applications provide a way for developers to re-use their existing skills in web development. WHY Hybrid mobile application development looks appealing to an organization’s. Why hire a developer for each platform when you can hire one developer and target all of them through HTML, CSS, and JavaScript? But Reality is???
  • 5. When should you build a hybrid mobile app? ● Which mobile platforms do you wish to target? ● Do you want to distribute your application via app stores? ● Are you looking to utilize the capabilities of the mobile device? ● What are the technical abilities of your development team? ● Does the one-size-fit-all approach of hybrid really live up to its promise? When should you build a hybrid mobile app? ● Which mobile platforms do you wish to target? ● Do you want to distribute your application via app stores? ● Are you looking to utilize the capabilities of the mobile device? ● What are the technical abilities of your development team? ● Does the one-size-fit-all approach of hybrid really live up to its promise?
  • 6. Examples of Hybrid ApplicationsExamples of Hybrid Applications Insta untappd yelp FitFyles http://showcase.ionicframework.com/
  • 7. Drifty: Ben Sperry and Max Lynch- 2012 Ionic: 2013 ­ Developers have created 500,000 apps ­ 15,000 stars on GitHub and has risen to become one of the top 40     most popular projects worldwide, notes Lynch.  Drifty: Ben Sperry and Max Lynch- 2012 Ionic: 2013 ­ Developers have created 500,000 apps ­ 15,000 stars on GitHub and has risen to become one of the top 40     most popular projects worldwide, notes Lynch.  Ionic : A Large scale overview Drifty, a company that has been making it possible for web developers to build  and publish native mobile applications that can then be published to the major  app stores, including Apple’s iTunes, Amazon’s Appstore and Google Play, has  now raised an additional $2.6 million led by Lightbank in Chicago.
  • 8. Ionic is the open source HTML5 Mobile Framework for building amazing, cross-platform hybrid native apps and mobile websites with HTML, JavaScript, and CSS. If you know how to build or design websites, you will be able to build a real mobile app with Ionic! Ionic is the open source HTML5 Mobile Framework for building amazing, cross-platform hybrid native apps and mobile websites with HTML, JavaScript, and CSS. If you know how to build or design websites, you will be able to build a real mobile app with Ionic! Ionic Framework
  • 9. Ionic 2 Vs Ionic1Ionic 2 Vs Ionic1 Ionic 2 is currently in beta and is being actively devleoped At a high level, Ionic 2 is very similar conceptually to Ionic 1. In Ionic 1 you have controllers that hold your logic, and templates that define your views. Ionic 2 is the same, except you have classes instead of controllers. There are some differences in the template syntax, and a lot of differences in the class structure. So, let’s jump into some specifics. Here’s 5 reasons why I think Ionic 2 is better than Ionic 1.So, let’s jump into some specifics. Here’s 5 reasons why I think Ionic 2 is better than Ionic 1.
  • 10. 1- Organisation and Structure1- Organisation and Structure home home.js home.html home.scss about about.js about.html about.scss Of course, you could organise your Ionic 1 projects like this as well, but it wasn’t really the default style that was used. It would require prior knowledge and motivation to achieve a sensible and scalable structure like this in Ionic 1. but in Ionic 2 you can’t really do that. 2- Tooling : it's simple but one of my favorate $ ionic generate page MyPage which can also be shortened to: $ ionic g page MyPage ● my-page my-page.js my-page.html my-page.scss
  • 11. 3- Navigation3- Navigation Navigation in Ionic 2 is very different to Ionic 1. In Ionic 1 navigation was defined using URLs, for example: .config(function($stateProvider, $urlRouterProvider) {.config(function($stateProvider, $urlRouterProvider) { $stateProvider$stateProvider .state('intro', {.state('intro', { url: '/',url: '/', templateUrl: 'templates/intro.html',templateUrl: 'templates/intro.html', controller: 'IntroCtrl'controller: 'IntroCtrl' })}) .state('main', {.state('main', { url: '/main',url: '/main', templateUrl: 'templates/main.html',templateUrl: 'templates/main.html', controller: 'MainCtrl'controller: 'MainCtrl' });}); $urlRouterProvider.otherwise("/");$urlRouterProvider.otherwise("/"); });}); and you would activate these states by linking to them, which is a very “web” approach. In Ionic 2 a more “native” approach is used where pages are “pushed” and “popped”: this.nav.push(MyPage);
  • 12. 4. It’s Just Javascript4. It’s Just Javascript In Angular 1 and Ionic 1 there was a lot of framework specific terminology and syntax to learn, but with Ionic 2 it’s basically just plain old (or rather new) Javascript. Everything you build is basically just ES6 (or TypeScript if you prefer) code, which isn’t specific to any framework. It’s just Javascript. The benefit of this is that everything you learn when building Ionic 2 application isn’t just going to help you build Ionic 2 applications, it’s also going to help you be a better Javascript developer in general. The skills you develop with Ionic 2 are going to be. able to be applied in a bunch of other places as ES6 eventually becomes the new “normal” Javascript.
  • 13. 5. Building5. Building In Ionic 2 almost all of your coding will be done inside of the app folder, which is completely separate to the www folders.
  • 14. Folder StructureFolder Structure If you’re not familiar with Ionic 2, it’s the latest incarnation of Ionic – “the world’s most popular cross-platform mobile development technology.”
  • 15. Summary of comparisonSummary of comparison Without a doubt, I would recommend everybody switch to Ionic 2 - If you’re completely new to Ionic, start with Ionic 2 - If you’re using Ionic 1 for existing projects, stick with Ionic 1 and upgrade it later - If you’re using Ionic 1 and starting a new project, use Ionic 1 if it is a mission critical or complex application
  • 17. Ionic 1Ionic 1 - npm install -g ionic - ionic start myproject - adding platform - adding plugings etc Building for iOSBuilding for iOS -ionic platform add ios Building for AndroidBuilding for Android - ionic platform add android Ionic 1Ionic 1 - npm install -g ionic - ionic start myproject - adding platform - adding plugings etc Building for iOSBuilding for iOS -ionic platform add ios Building for AndroidBuilding for Android - ionic platform add android Quick Start The default templates name are below: ● tabs (Default) ● sidemenu ● maps ● salesforce ● tests ● complex-list ● blank Ionic 2Ionic 2 - npm install -g ionic@beta - ionic start cutePuppyPics –v2 --ts - cd cutePuppyPics - ionic serve Adding platforms is same... Ionic 2Ionic 2 - npm install -g ionic@beta - ionic start cutePuppyPics –v2 --ts - cd cutePuppyPics - ionic serve Adding platforms is same...
  • 18. IONIC CREATORIONIC CREATORIONIC CREATORIONIC CREATOR Ionic Designing Magic & Cloud IONIC APPSIONIC APPS
  • 19. Today, most hybrid mobile applications leverage Apache Cordova. Ionic builds on top of Cordova Apache Cordova takes care of packaging your HTML5 app as a native app that can run in Android, iOS, and other platforms. But if you simply take an existing website and package it as a mobile app the result will look nothing like a native app: users will notice very quickly that the styles and behaviours are pretty different. Today, most hybrid mobile applications leverage Apache Cordova. Ionic builds on top of Cordova Apache Cordova takes care of packaging your HTML5 app as a native app that can run in Android, iOS, and other platforms. But if you simply take an existing website and package it as a mobile app the result will look nothing like a native app: users will notice very quickly that the styles and behaviours are pretty different. Apache Cordova
  • 20. ngCordova comes with over 70 native Cordova plugins that you can easily add to your Angular Cordova apps. Choose the plugin you’d like to use from the menu, which will have information on which plugin you need to install and an example of how to use it in your Angular code. Checkout : The game begins... ngCordova comes with over 70 native Cordova plugins that you can easily add to your Angular Cordova apps. Choose the plugin you’d like to use from the menu, which will have information on which plugin you need to install and an example of how to use it in your Angular code. Checkout : The game begins... Into Cordova
  • 21. References ● Knoldus Blog [Offcial] ● Telerik Documentation [Official] ● Cordova Documentation [Official] ● Ionic Framework Documentation [Official]

Notas del editor

  1. (You can think of the WebView as a chromeless browser window that’s typically configured to run fullscreen.) This enables them to access device capabilities such as the accelerometer, camera, contacts, and more. These are capabilities that are often restricted to access from inside mobile browsers.
  2. Today, Ionic powers over 1.5 million mobile apps and websites (and even some desktop apps!), built by small startups up to Fortune 50 companies. Ionic developers come from hundreds of countries around the world
  3. which is completely separate to the www folder which contains the code that is actually served to the browser. When you run an Ionic 2 application, the code in the app folder is automatically transpiled and bundled into a single Javascript file which is copied into the www folder and served. For the most part, you don’t have to touch your index.html file at all. I prefer this to Ionic 1 where you would have to import all of the Javascript files you’ve created into your index.html file, and this also meant that your final built application would contain bunch of different Javascript files (your source code). Although the Ionic 2 bundled code isn’t minified or obfuscated automatically, I like that by default the built application won’t contain the source code directly (just the single, transpiled Javascript file, which looks pretty funky and hard to reverse engineer). This does however make debugging a little trickier, which is about the only thing I prefer about Ionic 1 so far.
  4. accelerometer, camera, contacts, and more Apache Cordova originally started as a project named PhoneGap. These days, PhoneGap exists as a distribution of Apache Cordova that includes additional tools.
  5. Piyush Mishra