Is it necessary to know C, C++ and Java?

I’m interested in the robotics team and was wondering which are necessary to learn. Or in what order should i learn them in? Supposedly the school I will attend uses Java for FRC?
Sorry for any misinformation or errors as im fairly new to this

If your team is using Java, there shouldn’t be a reason that you need to know C or C++ that I can think of. Maybe something else for vision, but that’s about it.

If they use Java for their Competition Robot then that is the only language necessary for the competition robot itself.

Though, many teams use co-processors such as a Raspberry Pi for vision tracking on their robot, or use Arduino, HERO, Raspberry Pi, or other Controller Boards for Off-season projects such as T-shirt launcher robots and the like which can require various other programming languages, like C/C++, C#, Python, ect. Many other teams also have web developing teams who use various languages to develop their team’s websites such as PHP, Python, Ruby, and JavaScript.

In general though, focus on one language before you begin to expand to learning additional languages. Once you’re comfortable with one language and the general mindset of programming, learning additional programming languages becomes considerably easier.

For Java in FRC specifically, You’ll want to start by learning the basic Language and Control Structures (variables, if statements, loops, methods, classes) and then a little about OOP (Object Oriented Programming) Concepts (Abstraction, Encapsulation, Inheritance, and Polymorphism), after which you should be able to learn WPILIBJ, which is the Library used for all the FRC Specific stuff, interfacing with motor controllers, sensors, pneumatic, on the RoboRIO Controller.

You’re welcome to take a look through the Resource Compendium I’ve put together over the last couple years for information on Java, and WPILIB: https://docs.google.com/document/d/1jcBLAyJ3iTbsYSnWMVWqHaK8uywGTaTjF98eY_xxpl0/

Good Luck!

7 Likes