Ginga.ar 2.0

2

Click here to load reader

Transcript of Ginga.ar 2.0

Page 1: Ginga.ar 2.0

Ginga.ar 2.0

Durante la primera semana de Septiembre publicaremos Ginga.ar 2.0. Esta nueva versión multi-plataforma orientada a ser utilizada en dispositivos embebidos, contiene muchas mejoras, entre las cuales se encuentran:

● Core implementado completamente desde cero, cuya arquitectura está orientada a la portabilidad y el soporte (en futuras versiones) para múltiples dispositivos de exhibición. La implementación se desarrolló con el objetivo de reducir los requerimientos de hardware para el funcionamiento del middleware.

● Nuevo Engine Lua que soporta la totalidad de la especificación en el manejo del canvas, permitiendo que los desarrolladores de aplicaciones puedan disponer de todo el potencial que la norma ABNT ofrece en lo referido a rendering vía canvas.

● Nuevo módulo Lua TCP, que permite la comunicación mediante el canal de retorno sin necesidad de utilizar librerías complementarias, como era el caso en versiones anteriores de Ginga.ar.

● Soporte del 100% de las propiedades definidas en la norma para los objetos media de texto y imagen desde NCL. Además de la posibilidad de usar recursos audiovisuales provenientes internet.

● Más de 1800 test cases NCLua que garantizan el correcto funcionamiento del middleware.

● Nuevo soporte para HTML: Integración de un nuevo browser con soporte para HTML5.

Page 2: Ginga.ar 2.0

Evolución del código de Ginga.ar

Ginga.ar es un derivado de la implementacion de referencia de PUC Rio. Consideramos al código fuente de la implementación de referencia como código original. El porcentaje de código C/C++ original utilizado se redujo del 95% en la versión 1.1.0 al 17% en la versión 2.0 de Ginga.ar. Esto quiere decir que gran una porción del código fuente del middleware ha sido reescrito en función de los objetivos del proyecto: lograr un middleware open source con calidad industrial, manteniendo la compatibilidad con el standard. Las librerías que se mantienen son las relacionadas directamente con el lenguaje NCL (parser XML y engine NCL). Esta decisión está orientada a mantener la compatibilidad entre las implementaciones de la PUCRio y Lifia, ya que de esta manera es posible integrar fácilmente futuras versiones del lenguaje NCL.

El trabajo realizado sobre el middleware se encuentra respaldado por un amplio conjunto de test cases. A tal punto que más del 60% del código que será publicado con Ginga.ar 2.0 son test cases, como se muestra en la siguiente figura.