¿Qué es WPILib?

WPI Robotics Library (WPILib) es la biblioteca de software estándar proporcionada para que los equipos escriban código para sus robots FRC®. Una librería de software es una colección de código que puede ser importado y utilizado por otro software. WPILib contiene un conjunto de clases útiles y subrutinas para interactuar con varias partes del sistema de control FRC (como sensores, controladores de motor y la driver station), así como una variedad de otras funciones de utilidad.

Idiomas admitidos

Hay dos versiones de WPILib, una para cada uno de los dos lenguajes basados en texto oficialmente admitidos: WPILibJ para java y WPILibC para C++. Se hace un esfuerzo considerable para mantener la paridad de características entre estos dos lenguajes: las características de la biblioteca no se agregan a menos que puedan ser razonablemente compatibles con Java y C++, y cuando es posible, los nombres de clases y métodos se mantienen idénticos o muy similares. Si bien el soporte no oficial creado por la comunidad está disponible para algunos otros lenguajes, en particular python, esta documentación solo cubrirá Java y C ++. Se eligieron Java y C ++ para los lenguajes admitidos oficialmente debido a su nivel apropiado de abstracción y ubicuidad en las clases de informática de la industria y de la escuela secundaria.

En general, C++ ofrece un mejor rendimiento de gama alta, a costa de un mayor esfuerzo del usuario (la memoria debe manejarse manualmente y el compilador de C++ no hace mucho para garantizar que el código del usuario no se bloquee en tiempo de ejecución). Java ofrece un rendimiento menor, pero una comodidad mucho mayor. Se recomienda encarecidamente a los usuarios nuevos o sin experiencia que utilicen Java.

Documentación y código fuente

WPILib es una biblioteca de código abierto; la totalidad de su código fuente está disponible en línea en la página de WPILib Github:

El código fuente de Java y C ++ se puede encontrar en los directorios fuente de WPILibJ y WPILibC:

Si bien se recomienda encarecidamente a los usuarios que lean el código fuente para resolver preguntas detalladas sobre la funcionalidad de la biblioteca, se puede encontrar documentación más concisa en las páginas de documentación oficial de WPILibJ y WPILibC: