A mi me gusta Java. No es mi lenguaje de programación preferido, pero tiene buenos entornos de desarrollo, sirve para bastantes cosas, tiene un API muy bien documentado y es bastante elegante. Quizás peca de ser bastante verbose para mi gusto (necesitas escribir mucho para casi todo). Su principal defecto es la llamada trampa de Java. Por si no queréis leer, básicamente que al ser propiedad de Sun, estos modifican como quieren y distribuyen, gratuitamente, sus VM , pero sin liberar el código … así que dependes de ellos y su buena voluntad.

Pues hoy estamos un poco quemados con esa super idea de Sun del J2ME. La idea de Sun era que todos los móviles tuvieran una VM de Java para poder desarrollar aplicaciones independientes del móvil. La idea en si es buena, y en el mercado móvil es importante porque hay muchos mas dispositivos. Inicialmente la especificación era muy simple, los dispositivos tampoco eran muy potentes, así que no era mucho problema. Los programadores tampoco sabían que hacer para los móviles (aun hoy tampoco esta claro). Hasta que a alguien se le ocurrio hacer juegos… y claro, los fabricantes empezaron a desarrollar extensiones para facilitarles la vida a los programadores y de paso, al ser estas incompatibles con sus competidores… podían dominar el mercado. Sun hace relativamente poco actualizo su especificación incluyendo una API Multimedia, otra de Bluetooth, de conexión, etc. Todas opcionales pero estandarizadas.

En la asignatura que estoy cursando que programamos aplicaciones móviles hacemos uso de la primera, la MultiMedia API (MMAPI). Para desarrollar utilizamos el emulador y las herramientas de Sun ya que tanto el profesor como nosotros teníamos la impresión que era mas practico y nos permitía ceñirnos al estándar. Aun sin salir del estándar, pero utilizando funciones que permitían acceso a bajo nivel (enviar mensajes al sintetizador MIDI del móvil, notas para los profanos). El caso es que cuando empezamos a probar la aplicación en móvil nos encontramos con un divertido problema. Nokia no soporta una larga lista de clases (partes de la librería) en los móviles de serie 60 (¡que además son Smartphones con Symbian!). Además, algunas funciones no están implementadas y otras funcionan de manera diferente.

No voy a renegar totalmente de Java como Stallman, ya que me parece un lenguaje super practico. No obstante, los lenguajes de script como Python, Ruby o, por supuesto, mi querido PERL cada vez están pegando mas fuerte y ofreciendo librerías estándar muy completas y una velocidad de ejecución bastante aceptable. Y en el futuro esta el .NET, estandarizado por ECMA, y el proyecto Mono, que podrían meterle caña al Java. Y no podemos olvidar que en cuanto las utilidades GNU para Java estén maduras, el dominio que tiene Sun podría no estar tan claro.

Deja una Respuesta