El lenguaje de programación Dart será estándar

Cuando Google anunció su lenguaje orientado a objetos para la escritura de aplicaciones web complejas lo hizo con bastantes miras de futuro.
Y es que, según explicaba en su momento la compañía de Mountain View, Dart cuenta con una veloz máquina virtual capaz de superar a la competencia en ciertos benchmarks.
Aunque para garantizar su pervivencia no basta con lanzar dicho lenguaje a la calle y confiar en su evolución, sino que tiene que ser respaldado por la comunidad. Algo que acaba de conseguir ahora que la organización dedicada a la elaboración de normas Ecma ha formado un comité para publicar una especificación estándar del mismo.
Así lo han confirmado los propios responsables del proyecto, que se muestran “entusiasmados” con este logro, ya que es la base para “un futuro en el que Dart se ejecute de forma nativa en los navegadores web“.
“La aplicaciones Dart pueden ser rápidas cuando se compilan para JavaScript”, añaden, “pero una Dart VM incorporada permite un rendimiento aún mejor”.
Dart alcanzó la versión 1.0 hace un mes, lo que implica que tras dos años de vida por fin está listo para que los desarrolladores web creen aplicaciones basándose en su código.
Entre otras características, el kit de Dart 1.0 incluye el entorno de desarrollo Dart Editor, su propia versión de Chromium bautizada como Dartium, el traductor dart2js con JavaScript mejorado y el gestor de paquetes Pub.



Cómo emular Ubuntu Touch en un ordenador

Ubuntu Touch es el nuevo sistema operativo móvil de Canonical con el que la desarrolladora de Ubuntu pretende entrar en este nuevo mercado en auge y plantar cara a los 2 grandes actuales como son Android y iOS. Tras varios meses desde el lanzamiento de la primera versión del SDK, el equipo tras el desarrollo de Ubuntu Touch ha lanzado, por fin, la primera versión experimental del emulador de su sistema operativo para poder probarlo desde cualquier sistema sin necesidad de disponer de un smartphone Nexus para ello.

Este emulador se basa en el emulador de Android, por lo que la apariencia es idéntica a este pero con un sistema operativo diferente cargado en él. La mayoría de las aplicaciones deberían funcionar sin problemas y los nuevos paquetes click deberían estar instalados y habilitados. La red también funciona sin problemas en este sistema operativo móvil, por lo que, salvo el uso de la interfaz táctil, es una alternativa excelente para todos los usuarios que quieran probarla.

Por otro lado, los desarrolladores aún tienen bastante trabajo por delante ya que, al ser una versión experimental, está muy poco depurada y cuidada. Varios servicios aún no funcionan tampoco en este sistema operativo móvil y el rendimiento general es bastante lento al estar basada la imagen en arquitectura ARM, aunque, según afirman, una versión x86 podría salir en poco tiempo que mejorará notablemente el funcionamiento de este emulador.

Este emulador de Ubuntu Touch, por el momento, únicamente está disponible para Ubuntu 14.04, aunque en el wiki oficial hay instrucciones para compilarlo manualmente para Ubuntu 13.10. A partir de la próxima Ubuntu 14.04 este emulador estará presente en todas las futuras versiones del sistema para que los usuarios puedan probarlo y desarrollar para él.

Cómo instalar Ubuntu Touch en Ubuntu 14.04
Para instalar y ejecutar Ubuntu Touch en Ubuntu 14.04 debemos teclear las siguientes líneas en un terminal:
  • sudo apt-get install android-emulator
  • cp -r /usr/share/android/emulator/ ~/
  • cd ~/emulator/
  • ./build-emulator-sdcard.sh
  • ./run-emulator.sh

El lanzamiento de este emulador puede permitir que muchos más usuarios tengan un primer contacto con este sistema operativo y, a la vez, que otros desarrolladores se animen a probarlo y a programar para él ya que, disponer de un emulador, permite trabajar de forma mucho más sencilla que tener que dedicar un dispositivo como un Nexus 4 a ello.

www.asociacionaepi.es



Google anuncia Dart, la aternativa a JavaScript

El gigante de Internet ha anunciado la versión 1.0 de Dart, un nuevo lenguaje web que amenaza con ser una alternativa viable y de código libre a JavaScript, para sitios y aplicaciones web.

Pero en realidad el debut de este lenguaje se produjo hace un par de años atrás, aunque su implementación no era todavía posible en programación. No fue hasta ahora, que Dart puede ser usado como un lenguaje que es mucho más fácil de aprender que JavaScript, además de que puede correr programas propios y, por supuesto, ser adaptado a otros navegadores que no sean Chrome.

La ventaja de uso de Dart por parte de los programadores es que es más veloz que las librerías en JavaScript, de un 42 a un 130% más rápido según benchmarks de Google. Sin embargo, Google se enfrentará al problema de que JavaScript es demasiado popular entre los programadores que han creado millones de sitios web con él. Migrar ahora hacia un lenguaje impuesto por Google parece ser una alternativa difícil.
De cualquier manera, Google se prepara para dar impulso a Dart con una serie de presentaciones dedicadas a programadores. En estos momentos, Blossom, Montage, Soundtrap, Mandrill y la propia Google, además de Adobe, drone.io y JetBrains ya están usando el nuevo lenguaje. Además, Google anuncia que ya hay 500 paquetes de librerías disponibles por parte de la comunidad.

www.asociacionaepi.es



Colaboración entre Xamarin y Microsoft

Xamarin, la empresa de nuestro connacional Miguel de Icaza, está en tratos con Microsoft para llevar el desarrollo de iOS y Android a Visual Studio. La colaboración se anunció con la llegada oficial de Visual Studio 2013, en un evento que se celebró en Nueva York. La colaboración tiene tres puntos fundamentales:

  • Mejor integración de la tecnología de Xamarin con las herramientas y servicios de desarrollo de Microsoft. La recién lanzada Universidad Xamarin, ahora será gratis para los suscriptores de MSDN
  • Los subscriptores de MSDN tendrán un sistema de prueba exclusivo y opciones de precios para Xamarin, en equipo o de forma individual Xamarin anunció la disponibilidad de soporte para Visual Studio 2013 y para la biblioteca de clases portable .NET. Este es un entorno de .NET que permite crear bibliotecas que trabajen en un amplio rango de pl;ataformas .NET sin tener que recompilar. Esto permitirá a Xamarin usar la tecnología que tienen en iOS y Android para Visual Studio.

Xamarin empezó con el desarrollo de Mono, un sistema .NET para Linux y se ha enfocado recientemente en el desarrollo móvil cruzado, es decir, usar un sistema para compilar para otros sistemas. Usando la implementación .NET de Xamarin es posible escribir apps para iOS y Androisd en C# y por supuesto, se pueden escribir apps para Windows Phone 8 en C# también. Se puede incluso compilar para Mac OS X. Esto hace a .NET y C# la única plataforma cruzada con esta gama de productos. La mayoría de las características de C#, tipos anónimos, lambdas y LINQ, están disponibles.

Cabe decir que no se puede reusar el 100% del código porque el entorno gráfico para cada una de estas plataformas son muy diferentes. Sin embargo, se pueden acceder a los API nativos vía un conjunto estándar de bibliotecas. Xamarin dice que todo lo que se puede hacer en Objective C o Java, se puede hacer usando C#.

En iOS, por ejemplo, las apps se compilan al código nativo de ARM. Xamarin estima que el 75% del código puede ser compartido, pero por supuesto, esto dependerá de la aplicación. En Android, el compilador crea un lenguaje intemedio (IL), el cual es compilado usando el compilador JIT (Just In Time) para que corra de manera nativa.
Se puede usar Xamarin Studio o Visual Studio y se pretende que la integración de Visual Studio sea el núcleo de la colaboracion con Xamarin. Ser capaz de desarrollar para las tres plataformas más importantes de teléfonos usando el mismo IDE suena atractivo para los fanáticos de la plataforma .NET.

Xamarin indica que tiene ya una comunidad de unos 430 mil desarrolladores, con más de 20 mil cuentas registradas (que pagan). El costo de la suscripción es de 299 dólares para una licencia personal, pero sube a 1899 dólares para una licencia empresarial. Y esto es por plataforma, por desarrollador, por año. Con ello, debe quedar claro que Xamarin tiene un buen nivel de seguridad financiera. Se puede usar una versión gratuita para crear apps que pueden ser puestas en las tiendas virtuales.


www.asociacionaepi.es



Espresso, framework Android para hacer tests de la interfaz de usuario


Los tests UI en Android nunca han acabado de cuajar del todo para ser ágiles.. Conllevan diversas problemáticas como los elevados tiempos de ejecución o la sincronización entre las distintas llamadas a la acción. Buscando el santo grial podemos probar un recién estrenado framework propuesto por Google a la comunidad. Se trata de Espresso, de cuál tuvimos las primeras noticias en la pasada GTAC (Google Test Automation Conference).

Disponible como versión preliminar podemos comenzar a plantear complejos tests a nivel de interfaz de usuario que hasta ahora requerían un esfuerzo extra y nada trivial. Espresso dispone de una simple API, fácil de aprender y adaptar a nuestra necesidades.
Elimina la complejidad de la gestión de distintos hilos de ejecución. Sólo debemos escribir el test de forma concisa tal cual son las verdaderas acciones Espresso se encarga de sincronizar las distintas acciones y ejecutarse cuando cada evento esté disponible siguiendo su ciclo de ejecución).
Algunos ejemplos de lo que podemos hacer con Espresso en nuestra aplicaciones Android para testear:

onView(withId(R.id.my_view)) // withId(R.id.my_view) is a ViewMatcher .perform(click()) // click() is a ViewAction .check(matches(isDisplayed())); // matches(isDisplayed()) is a ViewAssertion
Testear los elementos visibles del action bar:
public void testClickActionBarItem() { // We make sure the contextual action bar is hidden. onView(withId(R.id.hide_contextual_action_bar)) .perform(click());
// Click on the icon – we can find it by the r.Id. onView(withId(R.id.action_save)) .perform(click()); // Verify that we have really clicked on the icon by checking the TextView content. onView(withId(R.id.text_action_bar_result)) .check(matches(withText(“Save”))); }

Como dato a tener en cuenta, es otro de los proyecto Open Source que surgen de necesidades reales del equipo de desarrollo de Google. Ha sido usado para más de 30 aplicaciones en Google como Maps, Google+ o Drive.

Ahora toca el turno de que los desarrolladores envíen feedback y colaboraciones al proyecto para poder construir un framework los bastante potente para que no sea un trauma testear la interfaz de usuario.

www.asociacionaepi.es