Dispone de nueve módulos de procesamiento, de los cuales siete están centrados en la construcción de activos web para el cliente (frontend). Cada uno de los módulos dispone de una serie de canales de procesamiento, encargados de generar, modificar o compilar los ficheros o activos entrantes, contribuyendo a la construcción del producto web final.
Algunos de estos módulos abordan tareas como:Su diseño contempla 3 modos de procesamiento: 1) servidor http simplificado y personalizable de cara a enmascarar (mock) el servidor real, facilitando la gestión de peticiones, sirviendo estáticos y pudiendo generar endpoints como en la API del servidor real; 2) cliente donde se explota todo el potencial para el desarrollo de frontends de aplicación; y 3) refinery (refinería) como lugar donde se desarrollan prototipos y componentes del sistema cliente de la manera más rápida posible.
El siguiente diagrama muestra el flujo de procesamiento interno de uno de estos módulos, el encargado de generar los ficheros de código JavaScript finales. Dispone de optimizaciones tanto a nivel de procesamiento paralelo como en manipulación de streams, acelerando el proceso de interpretación, limpieza y construcción. Además, gracias al uso de multiplexación de canales, permite la incorporación de nuevos procesadores capaces de proporcionar nuevas funcionalidades al sistema, aumentando su flexibilidad.
Su creación supuso un claro avance, ya que otorgaba funcionalidades no vistas en ningún otro sistema, pero desde entonces se ha ido ampliando y optimizando. Además de soportar los últimos avances en JavaScript experimental (@next), proporciona un soporte total a macros Sweet.js, potenciando la expresividad del lenguaje. Los componentes web (m-forms) son tratados como entidades de primer orden bajo este sistema, incorporando características como la internacionalización directamente desde ficheros de traducciones (yml), o la interpretación de vistas en tiempo de compilación basadas en plantillas (pug o twig).
Refinery se ideó a raíz de todo el sistema cliente y servidor de Werft-projects, pero simplificando y concentrando las tareas vitales en un solo hilo, realizando múltiples optimizaciones y convenciones que permiten desarrollar prototipos y frontends realmente rápido. Una vez que los prototipos son consolidados se exportan como componentes de primer orden de Werft-projects, incorporándolos al modo de procesamiento cliente.
Como se puede observar en el módulo refinery, el procesamiento de JS adquiere el centro de atención durante todo el flujo de procesamiento, aunque existen tareas encargadas de la gestión de otros activos (css, html, estáticos). Este módulo es altamente optimizado y paralelizado de cara a levantar instancias de trabajo y computar rápidamente de cara a minimizar los tiempos REPL (bucle de lectura-evaluación-impresión) durante la sesión de prototipado, disminuyendo enormemente los tiempos de desarrollo gracias a un alto nivel de interactividad (programador - producto final).
Este sitio web emplea cookies propias y de terceros para analizar el tráfico y ofrecerle una mejor experiencia. Al navegar o utilizar nuestros servicios el usuario está aceptando su uso.Más información.