WPILib Nedir?

WPI Robotics Library (WPILib), ekiplerin FRC® robotları için kod yazmaları için sağlanan standart yazılım kitaplığıdır. Bir yazılım kitaplığı, başka bir yazılıma aktarılabilen ve diğer yazılımlar tarafından kullanılabilen bir kod koleksiyonudur. WPILib, FRC kontrol sisteminin çeşitli bölümleriyle (sensörler, motor kontrolörleri ve sürücü istasyonu gibi) arayüz oluşturmak için bir dizi yararlı sınıf ve alt yordamın yanı sıra bir dizi başka yardımcı program işlevi içerir.

Desteklenen Diller

Resmi olarak desteklenen iki metin tabanlı dilin her biri için bir tane olmak üzere iki WPILib sürümü vardır: java için WPILibJ ve C ++ için WPILibC. Bu iki dil arasındaki özellik eşitliğini korumak için önemli bir çaba harcanmaktadır - hem Java hem de C++ için makul bir şekilde desteklenmedikçe kitaplık özellikleri eklenmez ve mümkün olduğunda sınıf ve yöntem adları aynı veya oldukça benzer tutulur. Topluluk tarafından oluşturulmuş resmi olmayan destek, diğer bazı diller için mevcut olsa da, özellikle python, bu belge yalnızca Java ve C ++’ı kapsayacaktır. Hem endüstri hem de lise bilgisayar bilimleri derslerinde uygun soyutlama düzeyine sahip olmaları ve her yerde bulunmaları nedeniyle resmi olarak desteklenen diller için Java ve C++ seçilmiştir.

Genel olarak, C++, artan kullanıcı çabası karşılığında daha iyi bir üst düzey performans sunar (bellek manuel olarak ele alınmalıdır ve C++ derleyicisi, kullanıcı kodunun çalışma zamanında çökmemesini sağlamak için fazla bir şey yapmaz). Java, daha az performans, ancak çok daha fazla kolaylık sunar. Yeni/deneyimsiz kullanıcıların Java’yı kullanmaları şiddetle tavsiye edilir.

Kaynak kodu ve belgeleme

WPILib açık kaynaklı bir kütüphanedir - kaynak kodunun tamamı WPILib GitHub Sayfasında çevrimiçi olarak mevcuttur:

Java ve C++ kaynak kodu, WPILibJ ve WPILibC kaynak dizinlerinde bulunabilir:

  • Java kaynak kodu <https://github.com/wpilibsuite/allwpilib/tree/main/wpilibj/src/main/java/edu/wpi/first/wpilibj> __

  • C ++ kaynak kodu <https://github.com/wpilibsuite/allwpilib/tree/main/wpilibc/src/main/native/cpp> __

Kullanıcıların kütüphane işlevselliği ile ilgili ayrıntılı soruları çözmek için kaynak kodunu okumaları şiddetle tavsiye edilirken, WPILibJ ve WPILibC için resmi belge sayfalarında daha kısa ve öz belgeler bulunabilir:

  • Java belgeleri <https://first.wpi.edu/wpilib/allwpilib/docs/release/java/> __

  • C ++ belgeleri