SlideShare una empresa de Scribd logo
Desarrollo de
aplicaciones
móviles con
IONIC 2
Ing. Diego Liebel
Contenidos
1. Introducción
2. Contextos
3. Arquitectura
a. AppNativas
b. AppHybridas
c. AppWeb
4. Javascript
a. EMA’s
b. Typescript
c. Angular 2
5. Ionic 2
2
Ideas generales, conceptos, evolución,
contextos, paradigmas, filosofías.
Introducción BREVE HISTORIA
Aplicaciones móviles evolución
Las primeras aplicaciones datan a
principio de los 90s (agendas, juegos
2D, editores de ringtones)
Evolucionaron rápidamente a las
tecnologías de transmisión de datos(
WAP y EDGE).
Se lanza al mercado el Blackberry en
2002
El lanzamiento de iPhone de Apple
2007 y Android de Google en 2008.
Desde ahí todo comenzó
Más info en techaheadCorp.com
3
En 2010 Apple App Store, Android
Market llegan a 1 billón de descargas.
En diciembre 2011 tanto App Store
como Android Market llegan a cifras de
10 billones de descargas.
En 2012 Google lanza Google Play.
En 2013 App Store y Google Play llega
50 billones de descargas.
En 2017 App Store llega a 2.2 millones
de apps y Google play 2.8 millones de
apps.
4
Situación
actual
Existen clientes que necesitan
una app para ayer.
5
La gran pregunta...
6
Qué hacemos?
El Contexto
Analizando...
7
8
Apps Nativas
Apps Hibridas
Apps Web
Apps Nativas
Java, Objective-C o
Swift, . Net (C#)
9
Estan desarrolladas con un sdk
específico para cada plataforma en
particular
Android IOS Windows
Apps Web ó
WebApps
Cliente Browser:
Javascript, Html, CSS
Servidor: Java, Ruby
PHP, Python……... 10
Aplicaciones web que funcionan
directamente con el navegador web.
Apps
Hibridas
11
Aplicaciones web embebidas en un
contenedor nativo.
Tiene acceso a las librerías y componentes nativos de la plataforma.
12
Apps Web Apps Hibridas Apps Nativas
Accesos limitados Accesos al dispositivos
Desarrollo ágil
Factores de desarrollo
Desarrollo dedicado
Mayor Rendimiento ->Bajo rendimiento
Multiples lenguajes
- Java
- Objective-C o Swift
- C# o VB
Único lenguaje
- Javascript, Html, Css
- Javascript, Html, Css
- Javascript, Html, Css
13
14
Ionic
Es un framework para el desarrollo de aplicaciones híbridas
basadas en html5, css y javascript, con una estética y usabilidad
mobile friendly
Utiliza AngularJs (framework javascript de Google) y el
proyecto Apache Cordova.
15
Ionic
Estructura y estética + Funcionalidad
Antes de
avanzar
Tengamos en
cuenta algunas
cuestiones…..
JavaScript
TypeScript
Angular JS
JAVASCRIPT
17
Es un lenguaje de programación interpretado, basado en
el estándar ECMAScript (ES). Se define como orientado
a objetos, basado en prototipos, imperativo, débilmente
tipado y dinámico.
TYPESCRIPT
Let’s start with the
first set of slides
18
TypeScript es un superconjunto de JavaScript, que
esencialmente añade tipado estático y objetos basados
en clases. (Popularmente javascript con vitaminas).
El mismo posee un compilador que traduce de
TypeScript a javascript de forma original.
Es un lenguaje de programación libre y de código
abierto desarrollado y mantenido por Microsoft.
ANGULAR 2
Let’s start with the
first set of slides
19
Framework para desarrollo de SPA (Single Page
Application)
Permite extender el HTML con etiquetas propias
● Con aspecto personalizado (HTML, CSS)
● Con comportamiento personalizado (JavaScript)
Interfaz basado en componentes (no en páginas).
Se recomienda usar con TypeScript (aunque se puede
con ES5 y ES6).
Inyección de dependencias
Mucho más…...
20
Angular 2 != Angular 1
● Está implementado desde cero, no como una evolución de Angular 1
● Angular 2 no es compatible con Angular 1
● Cuidado, la documentación de Angular 1 no sirve para Angular 2
21
Plataformas y Gestión de paquetes
Plataforma para ejecutar
aplicaciones JS fuera del
navegador
Gestor de herramientas de
desarrollo y librerías
JavaScript (integrado con
node.js)
22
Construcción de proyecto / empaquetados
Retomando…
con
Ionic
Ionic V1
24
▪ Se han hecho más de UN MILLÓN
de apps
▪ Básicamente se creó un SDK híbrido
que no existía en su tiempo.
▪ Fue hecho durante iOS 6 y Android
2.3
IoIonic V2Ioic V1
▪ Mayor rendimiento, mayor optimización
▪ Aproximación más modular por
componentes de Angular 2
▪ Definición más simple de componentes y
servicios mediante clases
▪ Dependency Injection simplificada con
TypeScript
▪ Sintaxis de bindings más clara
▪ Detección de errores en fase de
“compilación” con TypeScript
Angular 1.x Angular 2.x
25
Que ofrece ionic 2 sobre apache Cordova?
➔ Integración con Angular 2
➔ Pack de iconos según Sistema Operativo
➔ Librería de componentes compatibles.
➔ Visualización de diseño en los cuales se pueden visualizar como se van en
Android,iOS o Windows Phone
➔ Catálogos de plugins Apache Cordova probados y con soporte.
➔ Herramienta y Servicios.
26
Herramientas
y servicios
Herramienta de CLI
27
Ionic-cli
Es una herramienta de líneas de comandos (cli) para
gestionar proyectos: creación, compilación, publicación,
instalar/desinstalar plugins, ejecución del servidor, entre
otras funcionalidades.
Herramientas
y servicios
Ionic Creator
28
Creator
Es una herramienta de diseño visual, de
arrastrar y soltar.
http://docs.usecreator.com/docs
29
Ionic View
Ionic Demo
30
Ionic-view: Aplicacion móvil que permite
visualizar una app desarrollada en ionic.
Ionic Cloud
Servicios ionicos
31
Servicios que ofrece ionic
Ionic Services
Auth: sistema de autenticación de ionic e
interacción de autenticación de redes sociales.
Deploy: realizar despliegues on demand, sin
requerir binarios de plataforma.
Push: servicio de notificaciones push
centralizado.
Packege: permite empaquetar el proyeto para
enviar a Apple App Store y Google Play or
colegas.
https://ionic.io/discover
Ionic Cloud
32
Herramientas
y serviciosIniciando con
IONIC 2
33
Para ello se utilizará el cli de Ionic: ionic-cli
Tener instalado Nodejs (este incluye npm)
Requisitos...
Poseer una terminal de línea de comando como
administrador para la instalación.
Instalación por npm
npm install -g cordova ionic
Se verifica la instalación
ionic
Herramientas
y serviciosIniciando con
IONIC 2
34
Existen varias plantillas con lo que se puede comenzar
black , tab , sidemenu
Comenzar un proyecto...
Creación de proyecto con cli de Ionic
ionic start ejemplo sidemenu --v2 --ts
Desplegar el proyecto sobre el navegador
ionic serve -l
Herramientas
y servicios
35
● Configuración
○ ionic.config.json: configuración proyecto
○ package.json: librerias
○ tsconfig.json: compilador
○ Config.xml: configuración estética de pantallas
● Librerías descargadas
○ node_modules
● Documentación del proyecto
○ Hooks
● Recursos de multimedia
○ /resources /directorio de las imágenes de device
Estructura del Proyecto
Herramientas
y servicios
36
● Plugins o addons
○ /plugins -manejo extra para manejo nativo
● Configuración de proyecto una vez compilado, nombre,
iconos, entre otros.
○ /www
Estructura del Proyecto
Herramientas
y servicios
37
● Donde comienza la magia src
● index.html pagina principal
● manifest.json definiciones globales del proyecto
● /app
○ app.modules.ts Configuración de los módulos
○ app.component.ts Routeo de los diferentes
módulos
○ app.scss estilos de manera global.
● /assest definición de los recursos extras
● /themes
○ Variables.scss customizar las variables globales
del css de ionic e incluso los propios estilos
Estructura del Proyecto
Herramientas
y servicios
38
● /pages pantallas de la diferentes vistas
○ Home.html planillas
○ Home.ts componentes - logica
○ homes.scss estilo de esa vista en particular.
Estructura del Proyecto
39
Componentes
y páginas
Ionic ofrece una serie de componentes especialmente
diseñados para móviles
Todos los componentes comienzan con el tag
<ion-comp>
Com: nombre específico de un componente
Cada componente tiene un diseño y comportamiento
adaptado a la plataforma
40
41
42
“
43
http://ionicframework.com/docs/
44
Apps realizadas
themes
plugins
Starters
https://market.ionic.io
Aplicaciones
realizadas
45
46
47
Gracias por su atención
preguntas?
48
Saludos
▪ dliebel
▪ diegoliebel@gmail.com
▪ @diegoliebel
Bibliografias
Consultadas
Recursos
Fuentes
49
▪ Ionic - ionicframework.com
▪ AngularJs - angularjs.org
▪ Angular - angular.io
▪ Standard- Ecma International - ecma-international.org
▪ TypeScript - typescriptlang.org
▪ Node.js - nodejs.org
▪ NPM - npmjs.com
▪ Los logos son oficiales, y son una copia fiel.
▪ Presentation template by SlidesCarnival
▪ Photographs by Unsplash
▪ Learn more about slidedocs at duarte.com/slidedocs
▪ Inspirado en Micael Gallego, profesor, investigador y
profesional Universidad Rey Juan Carlos
“
No hay tecnologías buenas ni malas,
sólo se deben utilizar en el contexto
adecuado.
Ing. Liebel
50

Más contenido relacionado

La actualidad más candente

Desarrollo android - 2 - arquitectura del sistema
Desarrollo android   - 2 - arquitectura del sistemaDesarrollo android   - 2 - arquitectura del sistema
Desarrollo android - 2 - arquitectura del sistema
Emilio Aviles Avila
 
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript Motorola Mobility - MOTODEV
 
Java eclipse-y-android-studio
Java eclipse-y-android-studioJava eclipse-y-android-studio
Java eclipse-y-android-studio
Dies Irae
 
Entorno de desarrollo integrado de Visual Basic .NET
Entorno de desarrollo integrado de Visual Basic .NETEntorno de desarrollo integrado de Visual Basic .NET
Entorno de desarrollo integrado de Visual Basic .NETNilian Cabral
 
Manual vs estudio 2010 ultimate
Manual vs estudio 2010 ultimateManual vs estudio 2010 ultimate
Manual vs estudio 2010 ultimatepacheco0889
 
Android Studio - Ventajas y desventajas
Android Studio - Ventajas y desventajasAndroid Studio - Ventajas y desventajas
Android Studio - Ventajas y desventajasJorge Martín Espinosa
 
Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)
TaniaLandivarO
 
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_samaIntroducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
Software Guru
 
Desarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDKDesarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDK
Software Guru
 
Programacion
ProgramacionProgramacion
Programacion
Otto Perez
 
Herramientas de programación para desarrolladores
Herramientas de programación para desarrolladoresHerramientas de programación para desarrolladores
Herramientas de programación para desarrolladores
BBVA API Market
 
Programacion 5%
Programacion 5%Programacion 5%
Programacion 5%
Jhoanyeli Sanchez
 
Integración sistemasembebidosaplicacionesmóviles
Integración sistemasembebidosaplicacionesmóvilesIntegración sistemasembebidosaplicacionesmóviles
Integración sistemasembebidosaplicacionesmóviles
SBCTecnologias S.A. de C.V.
 
Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03
David Vaquero
 
Lima GTUG - Startup Android Workshop
Lima GTUG - Startup Android WorkshopLima GTUG - Startup Android Workshop
Lima GTUG - Startup Android WorkshopArmando Picón Z.
 
Presentacion eclipse - grupo 6
Presentacion   eclipse - grupo 6Presentacion   eclipse - grupo 6
Presentacion eclipse - grupo 6
Maga Lasic
 
Introduccion a Visual Studio .NET
Introduccion a Visual Studio .NETIntroduccion a Visual Studio .NET
Introduccion a Visual Studio .NETMarvin Romero
 
Java con eclipse
Java con eclipseJava con eclipse
Java con eclipse
Antonio Jesus Espejo
 
P R O G R A M A V I S U A L C++
P R O G R A M A  V I S U A L  C++P R O G R A M A  V I S U A L  C++
P R O G R A M A V I S U A L C++
alejigata
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
lourdes9898
 

La actualidad más candente (20)

Desarrollo android - 2 - arquitectura del sistema
Desarrollo android   - 2 - arquitectura del sistemaDesarrollo android   - 2 - arquitectura del sistema
Desarrollo android - 2 - arquitectura del sistema
 
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
 
Java eclipse-y-android-studio
Java eclipse-y-android-studioJava eclipse-y-android-studio
Java eclipse-y-android-studio
 
Entorno de desarrollo integrado de Visual Basic .NET
Entorno de desarrollo integrado de Visual Basic .NETEntorno de desarrollo integrado de Visual Basic .NET
Entorno de desarrollo integrado de Visual Basic .NET
 
Manual vs estudio 2010 ultimate
Manual vs estudio 2010 ultimateManual vs estudio 2010 ultimate
Manual vs estudio 2010 ultimate
 
Android Studio - Ventajas y desventajas
Android Studio - Ventajas y desventajasAndroid Studio - Ventajas y desventajas
Android Studio - Ventajas y desventajas
 
Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)
 
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_samaIntroducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
Introducción al Desarrollo de NDK apps | Dev Day 4 Woman | @condesa_sama
 
Desarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDKDesarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDK
 
Programacion
ProgramacionProgramacion
Programacion
 
Herramientas de programación para desarrolladores
Herramientas de programación para desarrolladoresHerramientas de programación para desarrolladores
Herramientas de programación para desarrolladores
 
Programacion 5%
Programacion 5%Programacion 5%
Programacion 5%
 
Integración sistemasembebidosaplicacionesmóviles
Integración sistemasembebidosaplicacionesmóvilesIntegración sistemasembebidosaplicacionesmóviles
Integración sistemasembebidosaplicacionesmóviles
 
Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03
 
Lima GTUG - Startup Android Workshop
Lima GTUG - Startup Android WorkshopLima GTUG - Startup Android Workshop
Lima GTUG - Startup Android Workshop
 
Presentacion eclipse - grupo 6
Presentacion   eclipse - grupo 6Presentacion   eclipse - grupo 6
Presentacion eclipse - grupo 6
 
Introduccion a Visual Studio .NET
Introduccion a Visual Studio .NETIntroduccion a Visual Studio .NET
Introduccion a Visual Studio .NET
 
Java con eclipse
Java con eclipseJava con eclipse
Java con eclipse
 
P R O G R A M A V I S U A L C++
P R O G R A M A  V I S U A L  C++P R O G R A M A  V I S U A L  C++
P R O G R A M A V I S U A L C++
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
 

Similar a Ionic 2

Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020
Micael Gallego
 
App inventor
App inventorApp inventor
App inventor
Mariaelena Moscoso
 
2.1 android cep jaen 2014 estructura de aplicación
2.1 android cep jaen 2014   estructura de aplicación2.1 android cep jaen 2014   estructura de aplicación
2.1 android cep jaen 2014 estructura de aplicación
Jose Antonio Vacas
 
Instalacion adobe dream weaver
Instalacion adobe dream weaverInstalacion adobe dream weaver
Instalacion adobe dream weaver
Luis Viteri
 
Curso Desarrollo Android
Curso Desarrollo AndroidCurso Desarrollo Android
Curso Desarrollo Android
SlashMobility.com
 
R esume libro el gran libro de android
R esume libro el gran libro de androidR esume libro el gran libro de android
R esume libro el gran libro de android
wiliam lliulli herrera
 
Como crear una app móvil con WordPress + Ionic
Como crear una app móvil con WordPress + IonicComo crear una app móvil con WordPress + Ionic
Como crear una app móvil con WordPress + Ionic
Antonio Torres
 
Los Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
Los Beneficios de Ionic en el Desarrollo de Aplicaciones MóvilesLos Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
Los Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
EanMusk
 
Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014
Lourdes Lorena Castillo Alvarez
 
App inventor
App inventorApp inventor
App inventor
nilton crispin pari
 
Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweetsJorge Soro
 
Visteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisasVisteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisas
José María Pérez Ramos
 
SGDB y tecnologías usadas por aplicaciones 2.0
SGDB y tecnologías usadas por aplicaciones 2.0SGDB y tecnologías usadas por aplicaciones 2.0
SGDB y tecnologías usadas por aplicaciones 2.0
Anderson Almidon
 
Lenguajes de Programación: Android
Lenguajes de Programación: AndroidLenguajes de Programación: Android
Lenguajes de Programación: Android
Luis Fernando Aguas Bucheli
 
Taller Práctico de Android
Taller Práctico de AndroidTaller Práctico de Android
Taller Práctico de Android
Javier Muñoz
 
Introducción a Android
Introducción a AndroidIntroducción a Android
Introducción a Android
mcanalesc94
 
Meetup app-moviles
Meetup app-movilesMeetup app-moviles
Meetup app-moviles
miguelcarrascoq
 

Similar a Ionic 2 (20)

Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020
 
App inventor
App inventorApp inventor
App inventor
 
2.1 android cep jaen 2014 estructura de aplicación
2.1 android cep jaen 2014   estructura de aplicación2.1 android cep jaen 2014   estructura de aplicación
2.1 android cep jaen 2014 estructura de aplicación
 
Instalacion adobe dream weaver
Instalacion adobe dream weaverInstalacion adobe dream weaver
Instalacion adobe dream weaver
 
Curso Desarrollo Android
Curso Desarrollo AndroidCurso Desarrollo Android
Curso Desarrollo Android
 
R esume libro el gran libro de android
R esume libro el gran libro de androidR esume libro el gran libro de android
R esume libro el gran libro de android
 
Como crear una app móvil con WordPress + Ionic
Como crear una app móvil con WordPress + IonicComo crear una app móvil con WordPress + Ionic
Como crear una app móvil con WordPress + Ionic
 
Presentacion cw2012
Presentacion cw2012Presentacion cw2012
Presentacion cw2012
 
Los Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
Los Beneficios de Ionic en el Desarrollo de Aplicaciones MóvilesLos Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
Los Beneficios de Ionic en el Desarrollo de Aplicaciones Móviles
 
Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014
 
App inventor
App inventorApp inventor
App inventor
 
Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweets
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Visteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisasVisteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisas
 
SGDB y tecnologías usadas por aplicaciones 2.0
SGDB y tecnologías usadas por aplicaciones 2.0SGDB y tecnologías usadas por aplicaciones 2.0
SGDB y tecnologías usadas por aplicaciones 2.0
 
Lenguajes de Programación: Android
Lenguajes de Programación: AndroidLenguajes de Programación: Android
Lenguajes de Programación: Android
 
Taller Práctico de Android
Taller Práctico de AndroidTaller Práctico de Android
Taller Práctico de Android
 
Introducción a Android
Introducción a AndroidIntroducción a Android
Introducción a Android
 
Meetup app-moviles
Meetup app-movilesMeetup app-moviles
Meetup app-moviles
 

Último

trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
lasocharfuelan123
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
juanorejuela499
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
juanjosebarreiro704
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
cuentauniversidad34
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
oscartorres960914
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
nicromante2000
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
Federico Toledo
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
Ecaresoft Inc.
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
RobertSotilLujn
 

Último (10)

trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
 

Ionic 2

  • 2. Contenidos 1. Introducción 2. Contextos 3. Arquitectura a. AppNativas b. AppHybridas c. AppWeb 4. Javascript a. EMA’s b. Typescript c. Angular 2 5. Ionic 2 2 Ideas generales, conceptos, evolución, contextos, paradigmas, filosofías.
  • 3. Introducción BREVE HISTORIA Aplicaciones móviles evolución Las primeras aplicaciones datan a principio de los 90s (agendas, juegos 2D, editores de ringtones) Evolucionaron rápidamente a las tecnologías de transmisión de datos( WAP y EDGE). Se lanza al mercado el Blackberry en 2002 El lanzamiento de iPhone de Apple 2007 y Android de Google en 2008. Desde ahí todo comenzó Más info en techaheadCorp.com 3 En 2010 Apple App Store, Android Market llegan a 1 billón de descargas. En diciembre 2011 tanto App Store como Android Market llegan a cifras de 10 billones de descargas. En 2012 Google lanza Google Play. En 2013 App Store y Google Play llega 50 billones de descargas. En 2017 App Store llega a 2.2 millones de apps y Google play 2.8 millones de apps.
  • 4. 4
  • 5. Situación actual Existen clientes que necesitan una app para ayer. 5
  • 9. Apps Nativas Java, Objective-C o Swift, . Net (C#) 9 Estan desarrolladas con un sdk específico para cada plataforma en particular Android IOS Windows
  • 10. Apps Web ó WebApps Cliente Browser: Javascript, Html, CSS Servidor: Java, Ruby PHP, Python……... 10 Aplicaciones web que funcionan directamente con el navegador web.
  • 11. Apps Hibridas 11 Aplicaciones web embebidas en un contenedor nativo. Tiene acceso a las librerías y componentes nativos de la plataforma.
  • 12. 12 Apps Web Apps Hibridas Apps Nativas Accesos limitados Accesos al dispositivos Desarrollo ágil Factores de desarrollo Desarrollo dedicado Mayor Rendimiento ->Bajo rendimiento Multiples lenguajes - Java - Objective-C o Swift - C# o VB Único lenguaje - Javascript, Html, Css - Javascript, Html, Css - Javascript, Html, Css
  • 13. 13
  • 14. 14 Ionic Es un framework para el desarrollo de aplicaciones híbridas basadas en html5, css y javascript, con una estética y usabilidad mobile friendly Utiliza AngularJs (framework javascript de Google) y el proyecto Apache Cordova.
  • 16. Antes de avanzar Tengamos en cuenta algunas cuestiones….. JavaScript TypeScript Angular JS
  • 17. JAVASCRIPT 17 Es un lenguaje de programación interpretado, basado en el estándar ECMAScript (ES). Se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico.
  • 18. TYPESCRIPT Let’s start with the first set of slides 18 TypeScript es un superconjunto de JavaScript, que esencialmente añade tipado estático y objetos basados en clases. (Popularmente javascript con vitaminas). El mismo posee un compilador que traduce de TypeScript a javascript de forma original. Es un lenguaje de programación libre y de código abierto desarrollado y mantenido por Microsoft.
  • 19. ANGULAR 2 Let’s start with the first set of slides 19 Framework para desarrollo de SPA (Single Page Application) Permite extender el HTML con etiquetas propias ● Con aspecto personalizado (HTML, CSS) ● Con comportamiento personalizado (JavaScript) Interfaz basado en componentes (no en páginas). Se recomienda usar con TypeScript (aunque se puede con ES5 y ES6). Inyección de dependencias Mucho más…...
  • 20. 20 Angular 2 != Angular 1 ● Está implementado desde cero, no como una evolución de Angular 1 ● Angular 2 no es compatible con Angular 1 ● Cuidado, la documentación de Angular 1 no sirve para Angular 2
  • 21. 21 Plataformas y Gestión de paquetes Plataforma para ejecutar aplicaciones JS fuera del navegador Gestor de herramientas de desarrollo y librerías JavaScript (integrado con node.js)
  • 24. Ionic V1 24 ▪ Se han hecho más de UN MILLÓN de apps ▪ Básicamente se creó un SDK híbrido que no existía en su tiempo. ▪ Fue hecho durante iOS 6 y Android 2.3 IoIonic V2Ioic V1 ▪ Mayor rendimiento, mayor optimización ▪ Aproximación más modular por componentes de Angular 2 ▪ Definición más simple de componentes y servicios mediante clases ▪ Dependency Injection simplificada con TypeScript ▪ Sintaxis de bindings más clara ▪ Detección de errores en fase de “compilación” con TypeScript Angular 1.x Angular 2.x
  • 25. 25 Que ofrece ionic 2 sobre apache Cordova? ➔ Integración con Angular 2 ➔ Pack de iconos según Sistema Operativo ➔ Librería de componentes compatibles. ➔ Visualización de diseño en los cuales se pueden visualizar como se van en Android,iOS o Windows Phone ➔ Catálogos de plugins Apache Cordova probados y con soporte. ➔ Herramienta y Servicios.
  • 26. 26
  • 27. Herramientas y servicios Herramienta de CLI 27 Ionic-cli Es una herramienta de líneas de comandos (cli) para gestionar proyectos: creación, compilación, publicación, instalar/desinstalar plugins, ejecución del servidor, entre otras funcionalidades.
  • 28. Herramientas y servicios Ionic Creator 28 Creator Es una herramienta de diseño visual, de arrastrar y soltar. http://docs.usecreator.com/docs
  • 29. 29
  • 30. Ionic View Ionic Demo 30 Ionic-view: Aplicacion móvil que permite visualizar una app desarrollada en ionic.
  • 31. Ionic Cloud Servicios ionicos 31 Servicios que ofrece ionic Ionic Services Auth: sistema de autenticación de ionic e interacción de autenticación de redes sociales. Deploy: realizar despliegues on demand, sin requerir binarios de plataforma. Push: servicio de notificaciones push centralizado. Packege: permite empaquetar el proyeto para enviar a Apple App Store y Google Play or colegas. https://ionic.io/discover
  • 33. Herramientas y serviciosIniciando con IONIC 2 33 Para ello se utilizará el cli de Ionic: ionic-cli Tener instalado Nodejs (este incluye npm) Requisitos... Poseer una terminal de línea de comando como administrador para la instalación. Instalación por npm npm install -g cordova ionic Se verifica la instalación ionic
  • 34. Herramientas y serviciosIniciando con IONIC 2 34 Existen varias plantillas con lo que se puede comenzar black , tab , sidemenu Comenzar un proyecto... Creación de proyecto con cli de Ionic ionic start ejemplo sidemenu --v2 --ts Desplegar el proyecto sobre el navegador ionic serve -l
  • 35. Herramientas y servicios 35 ● Configuración ○ ionic.config.json: configuración proyecto ○ package.json: librerias ○ tsconfig.json: compilador ○ Config.xml: configuración estética de pantallas ● Librerías descargadas ○ node_modules ● Documentación del proyecto ○ Hooks ● Recursos de multimedia ○ /resources /directorio de las imágenes de device Estructura del Proyecto
  • 36. Herramientas y servicios 36 ● Plugins o addons ○ /plugins -manejo extra para manejo nativo ● Configuración de proyecto una vez compilado, nombre, iconos, entre otros. ○ /www Estructura del Proyecto
  • 37. Herramientas y servicios 37 ● Donde comienza la magia src ● index.html pagina principal ● manifest.json definiciones globales del proyecto ● /app ○ app.modules.ts Configuración de los módulos ○ app.component.ts Routeo de los diferentes módulos ○ app.scss estilos de manera global. ● /assest definición de los recursos extras ● /themes ○ Variables.scss customizar las variables globales del css de ionic e incluso los propios estilos Estructura del Proyecto
  • 38. Herramientas y servicios 38 ● /pages pantallas de la diferentes vistas ○ Home.html planillas ○ Home.ts componentes - logica ○ homes.scss estilo de esa vista en particular. Estructura del Proyecto
  • 39. 39 Componentes y páginas Ionic ofrece una serie de componentes especialmente diseñados para móviles Todos los componentes comienzan con el tag <ion-comp> Com: nombre específico de un componente Cada componente tiene un diseño y comportamiento adaptado a la plataforma
  • 40. 40
  • 41. 41
  • 42. 42
  • 46. 46
  • 47. 47
  • 48. Gracias por su atención preguntas? 48 Saludos ▪ dliebel ▪ diegoliebel@gmail.com ▪ @diegoliebel
  • 49. Bibliografias Consultadas Recursos Fuentes 49 ▪ Ionic - ionicframework.com ▪ AngularJs - angularjs.org ▪ Angular - angular.io ▪ Standard- Ecma International - ecma-international.org ▪ TypeScript - typescriptlang.org ▪ Node.js - nodejs.org ▪ NPM - npmjs.com ▪ Los logos son oficiales, y son una copia fiel. ▪ Presentation template by SlidesCarnival ▪ Photographs by Unsplash ▪ Learn more about slidedocs at duarte.com/slidedocs ▪ Inspirado en Micael Gallego, profesor, investigador y profesional Universidad Rey Juan Carlos
  • 50. “ No hay tecnologías buenas ni malas, sólo se deben utilizar en el contexto adecuado. Ing. Liebel 50