Desarrollo de Aplicaciones Móviles. Java



Documentos relacionados
1. INTRODUCCIÓN Y OBJETIVOS

INF 473 Desarrollo de Aplicaciones en

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

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

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

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

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

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

UNIVERSIDAD DE SALAMANCA

Guía de uso del Cloud Datacenter de acens

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Maquinas virtuales Conceptos Básicos

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

Moving Java into mobile phones

Ventajas del software del SIGOB para las instituciones

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Escritorio remoto y VPN. Cómo conectarse desde Windows 7

Introducción a las redes de computadores

Capítulo 5. Cliente-Servidor.

COLEGIO COMPUESTUDIO

Tema 1. Introducción a JAVA

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

CAPITULO 3 VRML-JAVA-WWW

Ingº CIP Fabian Guerrero Medina Master Web Developer-MWD

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

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Módulo 2. Inicio con Java

UNIVERSIDAD TECNICA DEL NORTE

Ayuda para la instalación Componente Firma Digital INDICE. 1 Configuración previa Configuración Internet Explorer para ActiveX...

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

Práctica del paso de generación de Leads

Windows Server 2012: Infraestructura de Escritorio Virtual

Redes de área local: Aplicaciones y servicios WINDOWS

MANUAL COPIAS DE SEGURIDAD

CAPÍTULO 1 Instrumentación Virtual

Bechtle Solutions Servicios Profesionales

Software Criptográfico FNMT-RCM

Resumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva

Programador en Plataforma Java y XML

Proyecto MONO. Juantomás García. 1. Introducción. GNOME Hispano

Lic. Sofia J. Vallejos

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

Cómo elegir tu SOFTWARE DE GESTIÓN?

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

Visual Studio 2008 es el conjunto de herramientas de

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Contenido Derechos Reservados DIAN - Proyecto MUISCA

E-learning: E-learning:

Diseño de aplicaciones móviles seguras en Android.

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

Funcionalidades Software SAT GotelGest.Net (Software de Servicio de Asistencia Técnica)

Novedades. Introducción. Potencia

Escritorios virtuales

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

Módulo 1 El lenguaje Java

Soporte Técnico de Software HP

Compilación de Minimo

QUE ES COMLINE MENSAJES? QUE TIPO DE MENSAJES PROCESA COMLINE MENSAJES?

MOBILE BUSINESS INTELLIGENCE

Día :00h Lugar: Obra Social Ibercaja, Sala De actos, Rambla Ferran 38, 3º, Lleida

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

Person IP CRM Manual MOBILE

Internet Information Server

Introducción a la plataforma Moodle Aníbal de la Torre Plataforma Moodle. Accediendo a los contenidos

PRESENTACIÓN PRODUCTO. Más que un software, el método más eficaz de conciliar.


CAPÍTULO 3 VISUAL BASIC

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS

UNIT4 CRM. Información de usuario. Release notes. v a v UNIT Ref. acv9010u.docx

Aproximación práctica a ITIL. Proyecto VeredaCS. F r00

Electrónica Digital II

INTRODUCCIÓN A JAVA. Índice

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

Windows Server 2012: Identidad y Acceso. Módulo 2: Descripción General de Windows Server 2012 Remote Desktop Services.

Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 9: Imprimir

Cómo seleccionar el mejor ERP para su empresa Sumario ejecutivo

WINDOWS : TERMINAL SERVER

CONCLUISIONES Y RECOMENDACIONES

Utilidades de la base de datos

Portal de Compras del Gobierno del Estado de Baja California ( A. Antecedentes

Operación Microsoft Access 97

Creación y administración de grupos de dominio

Por qué Mobility Live?

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas

PRESENTACIÓN DEL PRODUCTO

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

NBG Asesores Abogados

La elección de Blogger como la plataforma o lugar donde

En este capítulo se describe la forma de cómo se implementó el sistema de video

POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2)

Modelos de Help Desk

JAVA EE 5. Arquitectura, conceptos y ejemplos.

2. Accedemos al dominio, introducimos el nombre de usuario y la contraseña para acceder. Y damos click en Aceptar.

CA.Solutions Asesoría IT Dossier Corporativo

Introducción a la Programación en Java. Page 1

Transcripción:

Java Java es la base para prácticamente todos los tipos de aplicaciones de red, además del estándar global para desarrollar y distribuir aplicaciones móviles y embebidas, juegos, contenido basado en web y software de empresa. Con más de 9 millones de desarrolladores en todo el mundo, Java le permite desarrollar, implementar y utilizar de forma eficaz interesantes aplicaciones y servicios. Desde portátiles hasta centros de datos, desde consolas para juegos hasta súper computadoras, desde teléfonos móviles hasta Internet, Java está en todas partes. El 97% de los escritorios empresariales ejecutan Java El 89% de los escritorios (o computadoras) en Estados Unidos ejecutan Java 9 millones de desarrolladores de Java en todo el mundo La primera opción para los desarrolladores La primera plataforma de desarrollo 3 mil millones de teléfonos móviles ejecutan Java El 100% de los reproductores de Blu-ray incluyen Java 5 mil millones de Java Cards en uso 125 millones de dispositivos de televisión ejecutan Java 5 de los 5 principales fabricantes de equipos originales utilizan Java ME Por qué los desarrolladores de software eligen Java? Java ha sido probado, ajustado, ampliado y probado por toda una comunidad de desarrolladores, arquitectos de aplicaciones y entusiastas de Java. Java está diseñado para permitir el desarrollo de aplicaciones portátiles de elevado rendimiento para el más amplio rango de plataformas informáticas posible. Al poner a disposición de todo el mundo aplicaciones en entornos heterogéneos, las empresas pueden proporcionar más servicios y mejorar la productividad, las comunicaciones y colaboración del usuario final y reducir drásticamente el costo de propiedad tanto para aplicaciones de usuario como de empresa. Java se ha convertido en un valor impagable para los desarrolladores, ya que les permite: Escribir software en una plataforma y ejecutarla virtualmente en otra Crear programas que se puedan ejecutar en un explorador y acceder a servicios Web disponibles Desarrollar aplicaciones de servidor para foros en línea, almacenes, encuestas, procesamiento de formularios HTML y mucho más Combinar aplicaciones o servicios que utilizan el lenguaje Java para crear aplicaciones o servicios con un gran nivel de personalización Escribir aplicaciones potentes y eficaces para teléfonos móviles, procesadores remotos, microcontroladores, módulos inalámbricos, sensores, gateways, productos de consumo y prácticamente cualquier otro dispositivo electrónico. Mtra. Carolina Galaviz Inzunza CBTIS 37 Página 1

Java 2 Micro Edition (J2ME) Plataforma que ofrece un entorno flexible y sólido para aplicaciones que se ejecutan en dispositivos móviles e integrados: teléfonos móviles, TDT, reproductores Blu-ray, dispositivos multimedia digitales, módulos M2M, impresoras y mucho más. La tecnología Java ME se creó originalmente para paliar las limitaciones asociadas a la creación de aplicaciones para pequeños dispositivos. Con este fin Oracle ha definido los fundamentos de la tecnología Java ME para adaptarse a entornos limitados y hacer posible la creación de aplicaciones Java que se ejecuten en pequeños dispositivos con memoria, visualización y potencia limitadas. La expansión de las computadoras personales la década pasada, permitió que la mayoría de las personas tuvieran acceso a una computadora, tanto en sus hogares, oficinas, cyber cafés, bibliotecas, etc. Cada vez las computadoras adquieren mayor capacidad y potencia, sin embargo en los últimos años la venta de dispositivos móviles como tabletas y celulares rebaso esta cifra. Según la empresa especializada International Data Corp (IDC), el mercado de teléfonos inteligentes creció un 40% en 2013 y es probable que alcance los 1,7 millones anuales hacia 2017. Por otro lado, la venta mundial de tabletas ascendió en 2013 a 217 millones de unidades, un 50,6% más que en el 2012. Vemos que la evolución se centra en fabricar aparatos más pequeños, dotándoles de habilidad de comunicación y potencia de cálculo. Independientemente del tipo de aparato, les requerimos que más o menos nos den las mismas prestaciones en cualquier momento. Pero eso es un problema para los desarrolladores, porque se les pide lo mismo, pero en sitios más pequeños cada vez. Hasta hace poco, la programación de estos dispositivos se hacía en código máquina o en ensamblador. La razón básica era que se disponía de entornos de ejecución muy restringidos, por lo que el uso de lenguajes de programación de alto nivel era impracticable. Esto implicaba el hecho de tener que desarrollar completamente a medida, es decir, específicamente para el dispositivo, con el consiguiente esfuerzo y lentitud en los desarrollos. El lenguaje de programación Java permite escribir un programa una vez y poder ejecutarlo en multitud de ordenadores, con diferentes plataformas sin tener que compilarlo de nuevo. Esa es una gran ventaja y una característica muy deseable en el entorno de los pequeños dispositivos, por lo que se ha exportado esa filosofía a estos aparatos. Así, mediante J2ME se podrán escribir aplicaciones para una gran variedad de dispositivos diferentes. Pero... por qué Java para programar dispositivos móviles? Existe una razón fundamental para elegir este lenguaje para desarrollar nuestras aplicaciones en estos dispositivos especiales: Java nos da la posibilidad de escribir una vez el programa y Mtra. Carolina Galaviz Inzunza CBTIS 37 Página 2

poder ejecutarlo en cualquier tipo de plataforma sin tener que recompilarlo de nuevo (Write Once, Run Anywhere (WORA) - Escríbelo una vez y ejecútalo en cualquier lugar). Esta independencia lo convierte en un firme candidato. Otra razón es que en muchos casos es la única alternativa que dispone el programador, pues varios fabricantes han optado únicamente por él para desarrollar aplicaciones. Pero también hay otras razones que aporta Java: Extensión dinámica: la habilidad de un programa Java para descargar código en tiempo de ejecución, yendo a buscar nuevos ficheros de clases sustituyendo las ya existentes o simplemente añadiéndolos a las aplicaciones. Seguridad: Java ofrece un entorno de ejecución seguro para programas con acceso a red. La máquina virtual de Java lleva a cabo una verificación estricta del código antes de la ejecución, asegurando que éste no trata de saltarse las protecciones impuesta por el lenguaje, utilizar punteros que accedan directamente a memoria o usar el objeto equivocado. Portabilidad: cada dispositivo dispone de un hardware con características peculiares que hace difícil encontrar un conjunto de bibliotecas que permitan desarrollar programas más o menos independientes del soporte físico. La máquina virtual de Java asegura esta portabilidad. Fiabilidad: teniendo en cuenta que algunos de los tipos de dispositivos que deben realizar tareas críticas, las aplicaciones que las implementan no deben fallar, ni tampoco ponerse fácilmente en manos de hackers. En ese sentido, Java es un lenguaje seguro, suministrando esa fiabilidad buscada. Para tal fin, requiere la obligación de la estructuración del código en paquetes, fuertes verificaciones de compilación y ejecución (fuerte tipado, comprobación de límites en vectores, pruebas de desbordamiento de pila,...), dispone un mecanismo eficiente para la gestión de excepciones y de memoria (elimina los punteros, asignación dinámica de memoria transparente al usuario y su posterior liberación -de esta manera se evitan errores). Código reutilizable: debido a la orientación a objetos de Java, se consiguen características como la facilidad en el desarrollo, la reutilización del código y la mayor calidad del código. Así, Sun Microsystems volvió a los orígenes de Java y desarrolló una edición de la versión de Java 2: J2ME (Java 2 Micro Edition). Y una razón fundamental puede ser las características especiales que tiene estos dispositivos: un ejemplo es la cantidad de memoria que reservará un dispositivo de este tipo para una aplicación Java, las clases y la máquina virtual, ya que suele ser apenas pocos cientos de kilobytes. Con este espacio, las dos ediciones anteriores no son apropiadas, por lo que esta empresa pensó en la posibilidad de desarrollar una nueva totalmente adaptada a las características específicas de los dispositivos pequeños. Mtra. Carolina Galaviz Inzunza CBTIS 37 Página 3

Descripción de J2ME - Origen y evolución Java comenzó su andadura como lenguaje de programación a mediados de la década de los noventa del siglo pasado. Originalmente fue concebido como un lenguaje para poder programar un amplio rango de aparatos electrónicos con capacidades de conectividad a partir de otro dispositivo del tipo de un asistente personal digital. El espíritu inicial era realizar una adaptación de C++, tomando lo mejor de él y a la vez mejorándolo y que se adecuara a las restrictivas condiciones ofrecidas por los chips de los aparatos a programar, teniendo como principales objetivos la fiabilidad y la seguridad. Además, se intentaba que una vez que fuera desarrollado el programa, éste se pudiera ejecutar en varios tipos diferentes de aparatos sin necesidad de volver a compilarlo. Con la llegada de Internet y los primeros navegadores para la World Wide Web, los desarrolladores de Java se dieron cuenta de su aplicabilidad a este nuevo medio, naciendo así la tecnología de los applets de Java, que permite, de nuevo, poder desarrollar una aplicación una única vez y ejecutarla tantas veces cómo se desee en un conjunto heterogéneo de ordenadores conectados a la Red. Así, en Mayo de 1995 Sun lanzó oficialmente Java al mercado con el Java Development Kit (JDK) en su versión 1.02., es decir, un entorno de desarrollo y una implementación del lenguaje Java. Este JDK fue ampliado y mejorado (se subsanaron algunos problemas), dando lugar a la versión 1.1. De ahí se pasó a la siguiente, el SDK 1.2 (Software Development Kit), la cual, entre otras muchas características, incluía una colección nueva de clases y elementos para el diseño de interfaces gráficos. Surgieron seguidamente la versión, SDK 1.3 y, finalmente y actual, el SDK 1.4. Cabe destacar en este punto la distinción entre la plataforma Java y las diferentes versiones JDK y SDK. El primero se refiere al lenguaje abstracto y a la especificación del mismo. Los segundos son, como ya hemos dicho, implementaciones que ha realizado Sun, así como un conjunto de herramientas que ofrece esta empresa para facilitar el desarrollo de aplicaciones. Y finalmente, ya en 1999, se vuelve a cerrar el ciclo que lleva a Sun a desarrollar una versión de Java especialmente diseñada para dispositivos móviles: Java 2 Micro Edition, basada en una máquina virtual llamada KVM. Este primera versión sólo contenía una única máquina virtual y un único API (inicialmente diseñados para Palm OS), hecho que puso de manifiesto la insuficiencia de esta solución para la gran variedad de dispositivos diferentes. De esta forma, en el año 2000, nació la primera versión de una configuración, es decir, el Connected Limited Device Configuration (J2ME CLDC 1.0). Una configuración ofrece el API básico para programar dispositivos, aunque no aporta todas las clases necesarias para desarrollar una aplicación completa. Por tanto, la primera configuración no tenía las herramientas necesarias para permitir a los desarrolladores escribir programas para el dispositivo Palm. En julio de 2000 nació la primera implementación de un perfil, concretamente el llamado Mobile Information Device Profile (MIDP), aunque no estaba destinado a PDAs sino a Mtra. Carolina Galaviz Inzunza CBTIS 37 Página 4

teléfonos móviles y a paginadores. A partir de este primer perfil, J2ME fue considerablemente aceptado por la comunidad de desarrolladores de dispositivos móviles, expandiéndose a una gran velocidad hasta nuestros días. Mtra. Carolina Galaviz Inzunza CBTIS 37 Página 5