Codename One 1.0: escribe en Java y ejecuta en iOS, Blackberry y Android
jueves, enero 31, 2013 at 2:28PM
Abraham

Codename One es una empresa creada por varios exempleados de Sun Microsystems que promete ser el Santo grial del desarrollo para dispositivos móviles: uno escribe una única aplicación que después se podrá ejecutar en iOS, Blackberry, Windows Phone y Android como aplicaciones nativas. La aplicación se escribe en Java (no empleando HTML5 como PhoneGap) y después se compila en los servidores de la empresa Codename One (no nos podemos bajar "el ingrediente mágico") a binarios nativos para cada plataforma.

Tras un período de más de seis meses donde sus herramientas han estado en "beta", durante el cual han tenido más de 100,000 descargas de su kit de desarrollo, esta semana la startup israelí ha anunciado la primera versión estable de su producto.

Las herramientas de desarrollo son gratuitas, aunque para compilar a las plataformas nativas es imprescindible emplear los servidores de la empresa y, salvo que seamos clientes de pago, tenemos limitado el número de builds de aplicaciones nativas que podemos realizar al mes, especialmente para la plataforma iOS (ya que según ellos requiere muchos más recursos crear el ejecutable nativo para esa plataforma). Si queremos, podemos comprar más builds: por sólo 9 dólares al mes podremos hacer todos los que queramos. La empresa también ofrece soporte y formación.

Al escribir aplicaciones con Codename One estaremos escribiendo código Java contra API Java específico de Codename One, que ellos traducirán después a la aplicación para cada una de las plataformas móviles. El modelo de programación de Codename One es muy parecido al de Swing, y la funcionalidad que ofrecen estos momentos está muy orientada a desarrollar aplicaciones que no sean juegos. No soportan, por ejemplo, 3D.

Cuentan con un plugin (opensource) tanto para Netbeans como para Eclipse. El plugin tiene un conjunto bastante potente de herramientas de desarrollo, y cuando queremos generar el ejecutable nativo envía nuestro código a los servidores de Codename One para generarlo:

Aquí os dejo una demo de una aplicación construida con Codename One ejecutándose en un iPad:

 

En el diseño de Codename One han seguido el mismo camino que el propio Java: han comenzado por un mínimo común denominador de funcionalidad de todas las plataformas, y ahora según van teniendo tiempos y recursos van añadiendo características específicas para cada plataforma. En el caso de que una plataforma tenga funcionalidad a las cuales ellos no dan acceso desde su API tenemos un mecanismo "a lo JNI" para llamar a código nativo de esa plataforma.

Se trata sin duda de un proyecto muy ambicioso, pero la gente que está detrás de él es gente bastante válida y con amplia experiencia en el campo, como Chen Fishbein, fundador principal arquitecto de  Lightweight User Interface Toolkit (LWUIT), el principal toolkit gráfico para Java ME, y también ha participado en el desarrollo de Sprint Wireless Toolkit.

¿Qué os parece esta herramienta?

Article originally appeared on javaHispano (http://www.javahispano.org/).
See website for complete article licensing information.