Cómputo Móvil: Diferentes lenguajes de programación para dispositivos móviles que utilizan la plataforma S60



Documentos relacionados
Diferentes lenguajes de programación para dispositivos móviles que utilizan la plataforma S60

Mejor tecnología para aplicación práctica NOMAD

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de:

Taller de Programación de Dispositivos Móviles. José Miguel Rubio L. Oficina

DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI

1. INTRODUCCIÓN Y OBJETIVOS

Implementación de tecnologías móviles para celular en una biblioteca universitaria

Capítulo 5 Introducción al Desarrollo de Aplicaciones Móviles usando J2ME

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Sistema Web con Acceso a Bases de Datos Multiplataforma a Través de Teléfonos Celulares

Capitulo 1: Plataforma Android

Lic. Sofia J. Vallejos

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación )

Unidad I. Introducción a la programación de Dispositivos Móviles

DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID. Ing. Marco Antonio Toscano Freire tw: martosfre

Capitulo 4. JavaFX. Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra

Módulo 2. Inicio con Java

PROGRAMACIÓN DE APLICACIONES PARA ANDROID. 30 horas 45 días

UNIVERSIDAD TECNICA DEL NORTE

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Ahorro de energía visualizando páginas Web en dispositivos móviles heterogéneos

INF 473 Desarrollo de Aplicaciones en

Situación Actual de los dispositivos móviles

(Integrated Development Environment) Herramienta de soporte para el desarrollo de sotfware: Editor (escribir y editar programas); un

Programación para sistemas en red IV. Conceptos básicos II

COLEGIO COMPUESTUDIO

Microsoft Office 2010 Illustrated. Tipos de Software

Moving Java into mobile phones

Evaluation of Pocket PC Devices for its Use as Mobile Servers

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

APPS PARA LA LOGISTICA. Qué es realmente una app? En qué se diferencia de otras soluciones web?

Software Computacional y su clasificación

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Capítulo 4: Requerimientos.

Módulo 1 El lenguaje Java

Desarrollo de Aplicaciones Móviles. Java

picojava TM Características

WEB APP VS APP NATIVA

EXPERTO EN DESARROLLO DE APLICACIONES MÓVILES" Curso especialista (500 horas)

Tema 2: Introducción a Android

Lección 5: Bloc de notas Estudio de la aplicación Bloc de notas, utilizada para escribir sencillos documentos de texto de tamaño reducido.

Por más insignificante que sea lo que debes hacer, esmérate en hacerlo lo mejor que puedas, como si fuera la cosa más importante

Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web

TP Nº 2 Mobile App. Ramiro Giunta Sistemas de Diseño Gráfico Cátedra Wolkowicz 2015

Características del software

CAPITULO 3 VRML-JAVA-WWW

Introducción. Aprendiendo APP INVENTOR 13. Qué perfil debe tener el lector del libro? Qué aprenderé?

Sistema Operativo Linux

U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C.

Un sistema operativo móvil o SO móvil es un sistema operativo que controla un dispositivo móvil al igual que las computadores utilizan Windows o

BASES DE DATOS OFIMÁTICAS

Ejecutar el instalador y seleccionar los paquetes necesarios. En nuestro caso son los siguientes: Android SDK Tools (ya vendrá instalado) Android SDK

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE

Escritorios virtuales

PROPUESTA DE DESARROLLO DE SITIO WEB AVANZADO

programar o cual es lenguage de programación que tiene una rápida inserción laboral. Para empezar observemos que el mundo de la informática

Los distintos navegadores para movernos por Internet

Curso de HTML5 y CSS3

Capitulo 5. Implementación del sistema MDM

Escuela Secundaria Técnica No. 95 Cuitlahuac DESARROLLO DE SOFTWARE PARA APOYO EN HABILIDADES MATEMÁTICAS Y LECTORAS.

Análisis de aplicación: Geany

Introducción a Gestión de Proyectos. Beneficios del Sistema. Arquitectura y Diseño del Aplicativo. Requerimientos del Sistema.

Asistente para la ayuda

Programador en Plataforma Java y XML

Introducción a Java. Diseño y Programación Orientados a Objetos 1

Capítulo 3. Diseño y Arquitectura del Sistema

Descarga de archivos. Descargar archivos Formatos y tipos de archivos WinZip - Winrar Sitios de Descargas. Descarga de archivos Diapositiva 1

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

Introducción al desarrollo para plataformas móviles con Phonegap

Capítulo 6 Introducción a los Sistemas Operativos de Redes (NOS)

Capitulo 1. Introducción a Objetos de Aprendizaje Móvil

- Qué es una Máquina Virtual?

Análisis de aplicación: BlueFish

Capítulo 5. Cliente-Servidor.

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

Tema 1. Introducción a JAVA

ADAPTACIÓN AL ENTORNO OFFICE 2007

Informática I para Bachillerato

Ingº CIP Fabian Guerrero Medina Master Web Developer-MWD

TABLA RESULTADOS. Se hace una lista con las páginas visitadas frecuentemente por los usuarios y se completa la recolección del total de ellas.

UNIVERSIDAD AUTÓNOMA DEL CARIBE

Informática I para Bachillerato

Java Básico. Introducción a Java. Copyright

Oficina virtual IFAPA. Preguntas y respuestas frecuentes /Presenta-PCT

Movilidad. Pasa demasiado tiempo fuera de la oficina? Solución móvil Dynamics NAV

Manual de Usuario software de monitorización por teléfono. móvil. Sólo para Symbian

SIAM WEB DOCUMENTACION GENERAL

UNIVERSIDAD DE SALAMANCA


Capítulo I. Definición del problema y objetivos de la tesis. En la actualidad Internet se ha convertido en una herramienta necesaria para todas

ÍNDICE SISTEMAS OPERATIVOS... 5

FUNDAMENTOS DE PROGRAMACION CON C#

UNIDAD 1. Operatoria de teclados. Criterios de evaluación. UNIDAD 2. Informática básica. Criterios de evaluación 1. CRITERIOS DE EVALUACIÓN

Insumos Video. Tipos de archivo de video. Obtención del recurso. Edición y optimización

Gestor de Citas Bibliográficas Zotero

Programación de Sistemas

Dirección General de Administración de Bienes y Contratación Administrativa

Transcripción:

Cómputo Móvil: Diferentes lenguajes de programación para dispositivos móviles que utilizan la plataforma S60 Laboratorio de Tecnologías de Información Cinvestav-Tamaulipas. Laboratorio de Tecnologías de Información

Agenda 1 Plataforma S60 Descripción Algunos Teléfonos Principales características de la tercera edición Características de los dispositivos S60 Lenguajes de programación 2 PyS60 Descripción Características 3 J2ME Descripción MIDP o MiDlet Características 4 Carbide.c++ Descripción Características 5 Conclusiones Conclusiones

S60 es una plataforma para terminales móviles (teléfonos inteligentes o PDAs) que utilizan el sistema operativo Symbian. La plataforma S60 consiste en un conjunto de bibliotecas y aplicaciones informáticas estándar, tales como telefonía, herramientas de gestión personal y reproductores multimedia.

Características, ediciones y versiones Las características (Feature Pack) son importantes lanzamientos de características adicionales disponibles entre las nuevas ediciones. Edición: Una nueva edición representa una colección de actualizaciones y de características adicionales, a menudo acompañadas de un cambio en el sistema operativo Symbian.

Versiones: Son actualizaciones a las ediciones, la familia de versiones y actualizaciones para S60 son: 1 S60 Primera edición (S60 1st Ed FP1) 2 S60 Segunda edición (S60 2nd Ed FP1 y FP2) 3 S60 Tercera edición (S60 3rd Ed FP1 y FP2)

Figura: Dispositivos Nokia S60

Figura: Dispositivos Nokia S60

Figura: Dispositivos Nokia S60

Gregorio Figura: Toscano Dispositivos Pulido IntroNokia a S60 S60

Figura: Dispositivos Nokia S60

Figura: Dispositivos Nokia S60

Figura: Dispositivos Nokia S60

Figura: Dispositivos Nokia S60

S60 3rd Edition FP1 S60 Tercera Edición trabaja la versión 9.2 de Symbian Nueva APIs de C++ que incluyen: Listar la galería. Reconocimiento de caracteres ópticos API. API motor los perfiles API modo de pantalla API Telnet API de animación Navegador web

Nuevas APIs de Java que incluyen: API para complementos multimedia (JSR-234) Gráficos en 2D API (JSR-226) Gráficos móviles en 3D (JSR-184)

Características de los dispositivos S60 Uso del Manejador de información Personal (PIM) (contactos incluyendo y calendario) Mensajería. Internet. Flash Lite de Adobe Player Nokia Push para hablar sobre el celular (PC). Cámara fotográfica Digital.

Características de los dispositivos S60 Reproductor de la música. Galería de medios. Video. Grabador de sonido Radio de FM. Sincronización Over-The-Aire (OTA). Editor y escritor de Microsoft Office.

Lenguajes de programación que cuenta con implementación para S60: Open C Java Flash Lite Python Ruby Lua Perl OPL

Lenguajes soportados por S60 Open C Open C Es un sistema de POSIX estándar y de las librerías del middleware C para la plataforma S60. Open C es parte de la edición S60 3er FP2, y está disponible como plug-in que los desarrolladores puedan utilizar para crear aplicaciones para los dispositivos anteriores a la 3er edición de S60. Java La edición de Java para dispositivos móviles es Java Micro Edition (J2ME), es una colección de tecnologías y de especificaciones para el desarrollo de aplicaciones para dispositivos móviles. Más adelante se explicará mas sobre J2ME.

Lenguajes soportados por S60 Open C Open C Es un sistema de POSIX estándar y de las librerías del middleware C para la plataforma S60. Open C es parte de la edición S60 3er FP2, y está disponible como plug-in que los desarrolladores puedan utilizar para crear aplicaciones para los dispositivos anteriores a la 3er edición de S60. Java La edición de Java para dispositivos móviles es Java Micro Edition (J2ME), es una colección de tecnologías y de especificaciones para el desarrollo de aplicaciones para dispositivos móviles. Más adelante se explicará mas sobre J2ME.

Lenguajes soportados por S60 Flash Lite Flash Lite es la versión móvil de la tecnología Adobe. Actualmente las S60 3er Ed y la serie 40 tienen Flash Lite 1.1 o Flash Lite 2.0 Python Python para S60 es un lenguaje de programación para teléfonos inteligentes, se pueden manejar todas las funciones de un teléfono como cámara, contactos, calendario, grabación y reproducción de audio,y Bluetooth bajo el estándar TCP/IP. Ruby Ruby es un lenguaje de programación orientado a objetos con una corta sintaxis con la combinación de otros elementos de Perl, Python, Lisp, Dylan y CLU. Ruby cuenta con las librerías móviles estándar de Symbian.

Lenguajes soportados por S60 Flash Lite Flash Lite es la versión móvil de la tecnología Adobe. Actualmente las S60 3er Ed y la serie 40 tienen Flash Lite 1.1 o Flash Lite 2.0 Python Python para S60 es un lenguaje de programación para teléfonos inteligentes, se pueden manejar todas las funciones de un teléfono como cámara, contactos, calendario, grabación y reproducción de audio,y Bluetooth bajo el estándar TCP/IP. Ruby Ruby es un lenguaje de programación orientado a objetos con una corta sintaxis con la combinación de otros elementos de Perl, Python, Lisp, Dylan y CLU. Ruby cuenta con las librerías móviles estándar de Symbian.

Lenguajes soportados por S60 Flash Lite Flash Lite es la versión móvil de la tecnología Adobe. Actualmente las S60 3er Ed y la serie 40 tienen Flash Lite 1.1 o Flash Lite 2.0 Python Python para S60 es un lenguaje de programación para teléfonos inteligentes, se pueden manejar todas las funciones de un teléfono como cámara, contactos, calendario, grabación y reproducción de audio,y Bluetooth bajo el estándar TCP/IP. Ruby Ruby es un lenguaje de programación orientado a objetos con una corta sintaxis con la combinación de otros elementos de Perl, Python, Lisp, Dylan y CLU. Ruby cuenta con las librerías móviles estándar de Symbian.

Lenguajes soportados por S60 Perl Toma características de C, del lenguaje interpretado shell, lisp, y de otros lenguajes de programación. La versión de Perl que trabaja con S60 es la 5.9.x. OPL Es un lenguaje de programación similar a BASIC con el propósito de ejecutarse en Symbian. OPL para la Serie S60 es alpha v0.30, el package es ta disponible bajo la licencia LGPL. Lua Lua es un lenguaje de programación ligero de gran alcance diseñado para extender aplicaciones,se utiliza con frecuencia como lenguaje de uso general, independiente, Lua 5.1 para Symbian S60 Tercera Edición solo corre en un emulador console.exe sin interfaz de usuario.

Lenguajes soportados por S60 Perl Toma características de C, del lenguaje interpretado shell, lisp, y de otros lenguajes de programación. La versión de Perl que trabaja con S60 es la 5.9.x. OPL Es un lenguaje de programación similar a BASIC con el propósito de ejecutarse en Symbian. OPL para la Serie S60 es alpha v0.30, el package es ta disponible bajo la licencia LGPL. Lua Lua es un lenguaje de programación ligero de gran alcance diseñado para extender aplicaciones,se utiliza con frecuencia como lenguaje de uso general, independiente, Lua 5.1 para Symbian S60 Tercera Edición solo corre en un emulador console.exe sin interfaz de usuario.

Lenguajes soportados por S60 Perl Toma características de C, del lenguaje interpretado shell, lisp, y de otros lenguajes de programación. La versión de Perl que trabaja con S60 es la 5.9.x. OPL Es un lenguaje de programación similar a BASIC con el propósito de ejecutarse en Symbian. OPL para la Serie S60 es alpha v0.30, el package es ta disponible bajo la licencia LGPL. Lua Lua es un lenguaje de programación ligero de gran alcance diseñado para extender aplicaciones,se utiliza con frecuencia como lenguaje de uso general, independiente, Lua 5.1 para Symbian S60 Tercera Edición solo corre en un emulador console.exe sin interfaz de usuario.

Agenda 1 Plataforma S60 Descripción Algunos Teléfonos Principales características de la tercera edición Características de los dispositivos S60 Lenguajes de programación 2 PyS60 Descripción Características 3 J2ME Descripción MIDP o MiDlet Características 4 Carbide.c++ Descripción Características 5 Conclusiones Conclusiones

Descripción de PyS60 Python se considera un proyecto de código abierto, administrado por Python Software Fundation, la última versión estable fue sacada en septiembre de 2006. Python para la Serie S60 (PyS60) es una versión modificada del Python adaptada para la Serie S60 del sistema operativo Symbian usado en dispositivos móviles. PyS60 proporciona el acceso a muchas de las funciones de teléfonos inteligente (además de las características estándares del lenguaje), por ejemplo : cámara fotográfica, calendario, grabación de sonidos y jugar con el audio, contactos y Bluetooth

Características principales Simple y sencillo de aprender. Libre y fuente abierta: Esta es una de las razones por las cuales Python es tan bueno, ha sido creado y mejorado por una comunidad entusiasmada en mejorar su desempeño. Lenguaje de alto nivel. Portable: debido a su naturaleza de ser Open Source, Python ha sido portado a diversas plataformas (Linux, Windows Macintosh,Solaris, OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/os, Palm OS, QNX, VMS, Psion, Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE y PocketPC).

Características principales Interpretado: Solo basta con ejecutar los programas, no se debe de enlazar y cargar librerías esto lo convierte en portable ya que solo basta con copiar el código y correrlo en algún otro sistema. Orientado a Objetos: Python permite programación orientada a procedimientos así como orientada a objetos. Ampliable: Se puede combinar código de C con Python. Empotrable: se puede insertar Python dentro de un programa en C/C++ para ofrecer las facilidades de scripting dentro del mismo. Librerías Extendidas: La librería estándar de Python es de hecho muy amplia y ofrece soporte para muchas aplicaciones. Además de la librería estándar, hay otras librerías como el Python Imaging Library.

Agenda 1 Plataforma S60 Descripción Algunos Teléfonos Principales características de la tercera edición Características de los dispositivos S60 Lenguajes de programación 2 PyS60 Descripción Características 3 J2ME Descripción MIDP o MiDlet Características 4 Carbide.c++ Descripción Características 5 Conclusiones Conclusiones

Descripción de J2ME La edición Java 2 Micro Edition fue lanzado por Sun Microsystems con el propósito de desarrollar aplicaciones Java para pequeños dispositivos. J2ME surge para remplazar todas las versiones reducidas basadas en el JDK 1.1 y crear una sola solución basada en Java 2 pero al mismo tiempo orientada al tipo de dispositivos pequeños con capacidades restringidas tanto en pantalla gráfica, como de procesamiento y memoria (teléfonos móviles, PDAs, Handhelds, Pagers, etc.)

MIDP es el acrónimo de Perfil para Dispositivios de Información Móvil (Mobile Information Device Profile, proporciona un perfil que se apoya en DLDC y que nos va a proporcionar los paquetes y clases necesarios para el desarrollo de aplicaciones. Una aplicación MIDP o MIDlet es aquella que sólo utiliza las APIs definidas por la arquitectura MIDP o CLDC.

Las características de J2ME para dispositivos de recursos limitados se basa en las APIs que pueden ser utilizadas para el desarrollo de aplicaciones en estos dispositivos, entre las APIs que tienen soporte en S60 son: Java API s for Bluetooth MIDP 1 y MIDP 2 Mobile 3D MMAPI 1.1 PDA Optional Packages for the Java ME platform SIP API WMAPI 1.0, etc..

Agenda 1 Plataforma S60 Descripción Algunos Teléfonos Principales características de la tercera edición Características de los dispositivos S60 Lenguajes de programación 2 PyS60 Descripción Características 3 J2ME Descripción MIDP o MiDlet Características 4 Carbide.c++ Descripción Características 5 Conclusiones Conclusiones

Descripción de Carbide.c++ Carbide.c++ v1.2, es la herramienta de desarrollo para C++ del sistema operativo de Symbian y desarrolladores de Open C. Carbide.c++ es una familia de gran alcance de las herramientas de desarrollo móviles construidas en el marco del eclipse. El producto es desarrollado por Nokia como parte de su familia de herramientas de desarrollo de Carbide, sustituye a CodeWarrior para Symbian.

Los miembros de la familia incluyen: Carbide.c++ OEM Edición para los usuarios creadores del dispositivo Carbide.c++ Profesional Edition para los desarrolladores que trabajan con los dispositivos de pre-producción Carbide.c++ Developer Edition para el desarrollo de aplicaciones en los teléfonos. Carbide.c++ Express, versión sin costo dar una experiencia móvil a los desarrolladores.

Carbide.c++ v1.1 se basa en el IDE 3.1 de eclipse y en eclipse CDT 3.0.2 extendido para Symbian, utiliza actualmente el mismo compilador de C++ que CodeWarrior para la emulación binaria.

Cuenta con vistas: Las vistas son paneles donde se organiza el desarrollo de la aplicación, así ayudan al desarrollador a tener siempre a la vista lo que necesita. Fácil instalación: Carbide.c++ es muy similar a la instalación estándar de eclipse lo cual le permite ser utilizado como ambiente de desarrollo para otros lenguajes como Perl o Java. Uso de Makefiles: Carbide.c++ genera makefiles los cuales traen como ventaja la reconstrucción rápidas basada en los archivos.

Agenda 1 Plataforma S60 Descripción Algunos Teléfonos Principales características de la tercera edición Características de los dispositivos S60 Lenguajes de programación 2 PyS60 Descripción Características 3 J2ME Descripción MIDP o MiDlet Características 4 Carbide.c++ Descripción Características 5 Conclusiones Conclusiones

Conclusiones J2ME es el lenguaje más ampliamente usado por la comunidad. Sin embargo, encontramos que presenta las siguientes desventajas: El tamaño permitido de las aplicaciones es de unas cuantos kilobytes (depende del teléfono). No corre de manera nativa en el teléfono. Generalmente necesita de esfuerzo extra para realizar aplicaciones que hagan uso de las características multimedia del teléfono (video de alta resolución, sonido de alta calidad, etc). Acceder a las comunicaciones, representa un desgaste para el programador. Usualmente no tiene acceso al calendario, a mensajes, y tampoco permite realizar llamadas.

Conclusiones Por otra parte, al trabajar con PyS60, encontramos: Pueden ser creadas aplicaciones de varios megabytes Acceder a características multimedia y PIM del teléfono fue sencillo y transparente. Es fácil realizar programas que hagan uso de las comunicaciones. Los programas en PyS60 resultaron ser compactos y fue más rápido desarrollar en él. Hay una gran comunidad activa. Tiene una interfaz natural con C++.

Conclusiones Finalmente, encontramos que Carbide.c++: Las versiones avanzadas del lenguaje no son libres. Tiene un buen soporte (documentación, videos, etc.) por parte de Nokia. Los proyectos grandes, deberían de usar C/C++. Es nativo, lo que representa velocidad de ejecución.

De acuerdo a lo anterior, concluimos, que en caso de necesitar una aplicación rápida, el lenguaje a utilizar es PyS60, si dicha aplicación necesita más demanda de hardware, entonces la mejor opción es Carbide.c++, finalmente, recomendamos usar J2ME, en caso que se quiera ampliar un trabajo que esté en dicho lenguaje.