Quite frankly my philosophy has been that if you buy a book (or several books) and can't learn from them, then a course isn't going to much more helpful. That may be my personal learning style, however.
I've always found the best way to learn is a combination of self-directed research and experimentation. On the first day of the job, chances are your assignment will not be of the "textbook" kind studied in the course (unless you work at video rental store that is still using a paper-based system and they want to upgrade to a computerized system - then just maybe). Just about every project I've ever worked on required me to learn something new, so if you are not already a self-learner then this career is probably not for you.