Javolution es una biblioteca en tiempo real cuyo objetivo es hacer que las aplicaciones Java o Java-Like / C ++ sean más rápidas y predecibles en el tiempo. De hecho, la previsibilidad del tiempo se puede arruinar fácilmente con el uso de la biblioteca estándar (inicialización diferida, cambio de tamaño de la matriz, etc.) que no es aceptable para sistemas críticos para la seguridad . La biblioteca Javolution de código abierto aborda estas preocupaciones [1] para la plataforma Java y las aplicaciones nativas. También proporciona numerosas clases de alto rendimiento y utilidades útiles para aplicaciones que no son de tiempo real. Como:
- Colecciones [2] clases, soporte de vistas personalizadas, [3] iteraciones basadas en cierres , paradigma de reducción de mapas , computación paralela , etc.
- Comportamiento del tiempo de ejecución en el peor de los casos documentado mediante anotaciones de Java en tiempo real [4]
- Estructuras fractales [5] para mantener un alto rendimiento independientemente del tamaño de los datos
- OSGi contextos [6] lo que permite preocupaciones transversales (concurrencia, registro, seguridad, ...) que se abordarán en tiempo de ejecución a través de OSGi publicó servicios sin contaminar el código de la aplicación ( separación de intereses )
- Soporte de computación paralela algorítmica con contextos concurrentes [7] y computación de propósito general en unidades de procesamiento de gráficos con contexto de computación [8]
- Clases base de Struct / Union [9] para la interfaz directa con aplicaciones nativas
- Perfómetro [10] clase de utilidad para medir el tiempo de ejecución en el peor de los casos con alta precisión
- Instalación de ordenamiento / desagrupamiento de XML [11] capaz de serialización / deserialización directa de clases existentes (no se requiere una estructura de datos intermedia)
- Lector / escritor XML similar a StAX [12] que no requiere la creación de objetos (como String) y, en consecuencia, más rápido que StAX estándar
- Gestión de configuración sencilla pero potente [13] para su aplicación.
Desarrollador (es) | Jean-Marie Dautelle |
---|---|
Lanzamiento estable | 7.0.0 / 2 de julio de 2017 |
Repositorio | |
Escrito en | Java , C ++ |
Sistema operativo | Multiplataforma |
Tamaño | 480 KB (archivado) |
Tipo | Biblioteca en tiempo real |
Licencia | BSD |
Sitio web | javolution |
Desde la versión 6.0, Javolution facilita la portabilidad [14] de cualquier código fuente de Java a C ++ para la compilación nativa multiplataforma . OSGi y JUnit se han adaptado y se incluyen con la distribución principal de C ++.
Todos los módulos (Java y nativos) se crean utilizando maven . Javolution se puede utilizar [15] como un paquete OSGi (preferido) o como una biblioteca independiente.
Referencias
- ^ Java determinista en tiempo completo
- ^ javolution.util
- ^ Vistas de colección
- ^ Anotación en tiempo real
- ^ Tabla fractal
- ^ Contextos OSGi
- ^ Contextos concurrentes
- ^ Calcular contextos
- ^ Estructura / Unión
- ^ Utilidad de perfómetro [ enlace muerto permanente ]
- ^ XML Marshalling / Unmarshalling Facility
- ^ Lectores / escritores similares a StAX
- ^ Gestión de la configuración de Javolution
- ^ "Descripción general de Javolution C ++" (PDF) . Archivado desde el original (PDF) en 2013-10-01 . Consultado el 19 de agosto de 2013 .
- ^ Descripción general del uso de Javolution
enlaces externos
- Sitio web de Javolution
- Java totalmente determinista en el tiempo - Conferencia AIAA Space 2007
- Validación de Java para aplicaciones críticas para la seguridad - Conferencia AIAA Space 2005
- Turbo-carga de Java para aplicaciones en tiempo real: artículo de Java Developer Journal