Introducción. Herramientas del curso de...

37
Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles © 2012-2013 Depto. Ciencia de la Computación e IA Introducción. Herramientas del curso de Experto.

Transcript of Introducción. Herramientas del curso de...

Page 1: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

© 2012-2013 Depto. Ciencia de la Computación e IA 

Introducción.Herramientas del curso de Experto.

Page 2: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

© 2012-2013 Depto. Ciencia de la Computación e IASesión de presentación 2

Puntos a tratar

• Introducción• Historia de los dispositivos móviles • Aplicaciones vs web

• Herramientas• Apuntes JTech• Eclipse• Android SDK• Xcode• Git• Moodle

Page 3: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 3

Historia de los smartphones

• Primeros smartphones en los 90• Nokia communicator en 1996

• Primer smartphone consistema operativo abierto en 2000:• Ericsson R380 con Symbian OS

• Smartphone actuales:• Pantalla táctil• Opcionalmente teclado físico• Sistema operativo con Market para aplicaciones• Sensores (GPS, equilibrio)• Cámaras y videoconferencia• Capacidad de almacenamiento y conectividad

Page 4: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 4

Procesador

• Samsung Exynos 5 Dual• Arquitectura ARM (en el 98% de los smartphones)

• Tipo RISC: reduced instruction set computer

• Instrucciones ARMv7• Plataforma “system on chip” que incluye:

• Hasta dos CPU's de 2.5 Ghz, VFPf4 floating point unit• GPU (quad core)• HSPA+• GPS

• Bluetooth• Wi-Fi• TV móvil

Page 5: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 5

Procesador

• Apple A6• ARM Cortex-A15• Instrucciones ARMv7• Todos los componentes del

“system on chip” (SoC)

Page 6: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 6

Dispositivos

b

Page 7: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 7

Conectividad

Los dispositivos deben conectarse para descargar las aplicaciones

Over The Air (OTA)• Conexión a Internet usando la red móvil (GSM, GPRS, UMTS)

Cable serie o USB• Conexión física

Infrarrojos• Los dispositivos deben tener contacto visual

Bluetooth• Ondas de radio (10 metros de alcance)

• Alta velocidad (723kbit/s)

Page 8: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 8

Redes de telefonía celular

1G: Red analógica Sólo voz Red TACS en España Distintos países usan distintas redes

• No permite itinerancia

2G: Red digital Voz y datos GSM (Global System for Mobile communications) en toda Europa

• Permite itinerancia Red no IP

• Protocolos WAP (WSP)• Un gateway conecta la red móvil (WSP) a la red Internet (TCP/IP)

Conmutación de circuitos (Circuit Switched Data, CSD)• 9’6kbps• Se ocupa un canal de comunicación de forma permanente• Se cobra por tiempo de conexión

Page 9: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 9

Redes de telefonía celular (2)

2,5G: GPRS (General Packet Radio Service) Transmisión de paquetes

• No ocupa un canal de forma permanente• Hasta 144kbps teóricamente (40kbps en la práctica)• Cobra por volumen de información transmitida

Se implementa sobre la misma red GSM

3G: Banda ancha Red UMTS (Universal Mobile Telephony System)

• Itinerancia global Entre 384kbps y 2Mbps Servicios multimedia

• Videoconferencia, TV, música, etc Transmisión de paquetes Requiere nueva infraestructura

Page 10: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 10

Redes de telefonía celular (3)

3.5G: HSDPA (High-Speed Downlink Packet Access) – mejora del scheduling de UTMS R99 y añade un nuevo

canal downlink– Acceso a Internet con mayor ancho de banda y menor

latencia: hasta 14Mbps– Variante HSPA+ hasta 84Mbps bajada y 22Mbps subida.– Terminales con HSDPA son compatibles con UTMS

Page 11: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 11

Redes de telefonía celular (4) 4G LTE (Long term evolution)

– Nuevo estándar de la norma 3GPP UMTS– Hasta 326,5Mbps de bajada y 86,5Mbps subida– Ancho de banda adaptativo entre 1.4 y 20 MHz– Celdas de 5Km óptimo, hasta 100Km – Alto rendimiento en movimiento hasta 15 Km/h. Conexión posible

hasta 500Km/h 4G Basada completamente en protocolo IP

• Abandonaría el acceso radio de UMTS, controlándolo por software

• Implantada en Japón desde diciembre de 2011• 5G: No está definido. Ideas: ubiquituous computing, conectado a la

vez a diferentes fuentes de datos, smart-radio, servicio desde vehículos aéreos

Page 12: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 12

Paradigmas de programación en móviles

Documentos Web Descarga documentos y los muestra en un navegador

Formato adecuado para móviles (WML, XHTML, ...)

Requiere conectar a red para descargar cada documento Velocidad de descarga lenta Documentos pobres (deben servir para todos los móviles)

Aplicaciones locales La aplicación se descarga en el móvil

Se ejecuta de forma local

Interfaz de usuario más flexible

Puede funcionar sin conexión (minimiza el tráfico)

Page 13: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 13

Documentos Web

WML (Wireless Markup Language) Forma parte de los protocolos WAP (Capa de aplicación, WAE) Lenguaje de marcado dirigido a móviles Requiere aprender un nuevo lenguaje diferente a HTML Documentos muy pobres

iMode Documentos escritos en cHTML (HTML compacto)

• Subconjunto de HTML• Propietario de NTT DoCoMo

Sobre la red japonesa PDC-P (extensión de la red japonesa PDC, similar a GSM, para transmisión de paquetes)

• En Europa se lanza sobre GPRS

XHTML MP Versión reducida de XHTML dirigido a móviles A diferencia de cHTML, se desarrolla como estándar

Page 14: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 14

Aplicaciones locales

Sistema operativo Symbian OS, Palm OS, Windows Pocket PC, Windows Mobile,

Android, iOS, etc Poco portable Requiere aprender nuevas APIs

Runtime Environments BREW

• Soportado por pocos dispositivos

• Requiere aprender una nueva API

Java ME (J2ME)• Soportado por gran cantidad de dispositivos

• Existe una gran comunidad de desarrolladores Java

Page 15: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 15

¿Sistema operativo o entorno de ejecución?• Los SO aprovechan mejor el dispositivo y ofrecen mejor

acceso al hardware y periféricos• Los smartphones usan SO• Los SO más extendidos entre los smartphones son iOS y

Android• El usuario es libre de usar cualquiera de ellos• El desarrollador se ve obligado a desarrollar para ambas

plataformas (y otras) para llegar a todos

• Plataforma de ejecución • no dependemos del sistema operativo• hay más de 2 mil millones de dispositivos con JavaME• no está soportada ni en iPhone ni en Android (aunque existe)

Page 16: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 16

Sistemas operativos

• Android (open source)• BlackBerry OS de RIM (propietario)• iOS de Apple (propietario)• Symbian OS (open source)• Windows Phone (propietario)• webOS de HP (algunas partes abiertas)• QNX de RIM (propietario)• SHR (basado en linux)• bada de Samsung (propietario)• Brew de Qualcomm• Windows Mobile (propietario)• Palm OS (propietario)

Page 17: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 17

Sistemas operativos en el mercado

Page 18: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 18

Sistemas operativos en el mercado

• Estadísticas de uso según Gartner

Page 19: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 19

Sistemas operativos en el mercado

Page 20: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 20

Herramientas del curso

• Ordenadores Mac• Plataformas de desarrollo instaladas localmente• Servicios para el curso instalados en Jtech • Repositorios en Bitbucket

Page 21: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 21

Herramientas del curso

• Login de las máquinas Mac: alumno• Sin permisos de administración• Todo lo necesario está instalado• El disco duro se borra con cada arranque• Puede hacer falta reconfigurar las herramientas cada vez

• Login de JTech• Independiente de vuestro login de moodle y de la UA• Acceso a los materiales del curso• http://www.jtech.ua.es/

Page 22: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 22

Apuntes JTech

• Por cada módulo del curso:

• Libro en pdf y en papel (apuntes + ejercicios)• Apuntes en html• Transparencias en pdf• Ejercicios en html• Plantillas para los ejercicios• Soluciones de los ejercicios (tras la entrega).

Page 23: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 23

Apuntes JTech

Page 24: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 24

Moodle

• http://moodle.jtech.ua.es/

Foro del curso

Page 25: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 25

Moodle

Page 26: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 26

Moodle

Page 27: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 27

Entregas

• A través del repositorio• Etiquetar el repositorio con el nombre del módulo

correspondiente, antes de pasar la fecha límite• Dar permisos al profesor correspondiente

Page 28: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 28

Foro del curso

Page 29: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 29

Eclipse

• Lo utilizaremos como IDE para desarrollar en• Android (con plugin)• Html y otros, como editor de texto

• Subiremos los proyectos al repositorio con el plugin Egit o por línea de comandos

Page 30: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 30

Repositorios en Bitbucket

• Los ordenadores del aula pierden la información guardada al iniciarse.

• Usaremos un sistema de control de versiones y lo subiremos a Bitbucket

• Las plantillas de los ejercicios estaránaccesibles desde el repositorio

• Los ejercicios se entregarán subiéndolosal repositorio

• Las soluciones se publicarán en elrepositorio

Page 31: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 31

Repositorios clásicos

• Sistema de control de versiones mantenido en el servidor

Page 32: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 32

Git

• Sistema de control de versiones distribuido• Control de cambios tanto en cliente como en servidor

Page 33: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 33

Android SDK

Page 34: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 34

Eclipse y plugin para Android

• El plugin de eclipse debe configurarse con las rutas de los respectivos kits de desarrollo

• Emulador: hay que crear los emuladores con las características deseadas

Page 35: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 35

XCode

Page 36: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

 © 2012-2013 Depto. Ciencia de la Computación e IA Sesión de presentación 36

XCode

Page 37: Introducción. Herramientas del curso de Experto.expertojava.ua.es/dadm/restringido/intro/traspas/sesion02-traspas.pdf · Ciencia de la Computaci ón e IA 7 Conectividad Los dispositivos

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

© 2012-2013 Depto. Ciencia de la Computación e IASesión de presentación 37

¿Preguntas...?