Is it necessary to use those boards for protection, or can I just use a resistor?? It's only one device and I'm not sure how much work I'll be doing after that.
As for controlling GPIO through code, I would prefer to use Python for the coding, but the package page says that the module is unsuitable for real time application. How fast is that?
Also, the C code is mapped to the SoC's GPIO outputs so how do those translate to the pins on the header?
Since this is the beginners section, I would recommend using an external board. Some of the boards are just a breakout board for a MOSFET, but at least you know they have a chosen a MOSFET suitable for the job.
At the very least, you will need a MOSFET which can be connected to a logic level voltage. If you are driving a relay or motor, then you need diode protection which may be built-in to the MOSFET or not. You probably also want a resistor to turn the MOSFET off when the CPU is not driving the GPIO.
Real time in this case really means anything much less than 100 ms, so if you just want to turn a motor on or off every few seconds then it should be fine.
There is a diagram of the header here http://elinux.org/Rpi_Low-leve.....eripherals
(I find the description there really confusing, but the pin next to "P1" marked on the board actually is Pin 1 of connector P1 which is the 3V3 pin shown as yellow square on the diagram, which might help you get the orientation).
ETA: there is a cheap MOSFET board here http://proto-pic.co.uk/mosfet-.....ntrol-kit/