OK...Starfleet uses naval terminology and traditions. So wouldn't it be more appropriate for 'cadets' to be called 'midshipsmen'?
Also, depending on how far out a ship was, it might be impractical to send an officer canididate (either a youth or an NCO up for OCS)home for the academy. OJT as a middie? I would assume, like in the British navy of old, you would remain a midshipsman until you could test on certain subjects at a starbase or at the academy.
Thoughts?