Otras alternativas a la programación con Java Versión: 2.0, Septiembre, 2006 Juan Manuel Fernández Luna Web: http://decsai.ugr.es/~jmfluna, Mail: jmfluna@decsai.ugr.es |
(C) Decsai Web: http://decsai.ugr.es |
Cuando la portabilidad, una de las principales requerimientos que nos hace elegir Java como plataforma de programación de dispositivos móviles, no es primordial, entonces podemos utilizar otras alternativas. Otros motivos que nos pueden inducir a no tomar Java como la plataforma idónea para nuestros desarrollos es que los desarrolladores tienen que esperar en ocasiones a que se desarrolle la máquina virtual y un API para el dispositivo con el que tenemos que trabajar, y unas veces podremos esperar, pero otras no. También tenemos que tener en cuenta el rendimiento que debe ofrecer nuestra aplicación porque con Java, la máquina virtual tiene que interpretar realmente un programa en byte-code en tiempo de ejecución, con la consiguiente pérdida de velocidad. Si necesitamos máxima velocidad de ejecución, quizá Java no sea la mejor opción y tenemos que buscar alguna otra alternativa. Entre estas destacamos:
Cuando no se necesite ningún procesamiento ni almacenamiento en el dispositivo una buena opción es el empleo del Wireless Application Protocol (WAP) junto con el Wireless Markup Language (WML). WAP es un conjunto de especificaciones para construir aplicaciones basadas en web para redes inalámbricas. WML es la parte de WAP que especifica el formato de la información para que pueda ser transferida entre dispositivos. WAP se basa en parte en Internet para trasladar la información a las pantallas de los teléfonos móviles o PDAs, dotados estos con navegadores WAP.
La mayoría del software escrito hoy en día no emplea Java, sino que lenguajes como C++, C o Visual Basic se presentan como los más populares para estas tareas. Las compañías han desarrollado completos entornos integrados para estos lenguajes en diferentes sistemas operativos como Windows CE o Palm OS.
Otro lenguaje que está teniendo bastante éxito es SuperWaba, también dedicado a la programación de dispositivos pequeños. Define un lenguaje, una máquina virtual, un formato de ficheros .class y un conjunto de clases base. SuperWaba desciende de Waba y es compatible con esta. La sintaxis de los programas escritos para SuperWaba es un subconjunto del lenguaje Java, lo que permite que los desarrolladores que estén familiarizados con Java puedan comenzar rápidamente a utilizar el SuperWaba. El formato de los ficheros clase (.class) de SuperWaba son también subconjuntos del formato Java. Sin embargo, SuperWaba no deriva de Java ni tiene que ver con Sun Microsystems. El lenguaje definido por SuperWaba, su máquina virtual y el formato de los ficheros clase han sido diseñados de forma tal que sean óptimos para su uso en PDAs. Las características de Java que usaban mucha memoria o que eran innecesarias para los PDA's han sido omitidas en el diseño del lenguaje y su máquina virtual.