Tapp news 10 passos para transformar em realidade o sonho de não ter patrão
Ginga.ar 2.0
1. 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.
2. 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.