Should I take the SCJD? I don't have any programming classes next year (I was going to take Enterprise Programming in Java but transportation + time are issues) so I was thinking of going for the SCJD to keep my skills up. I have experience with Swing, data structures/algorithms, and Sockets, but I feel weak in areas such as good OO design and design patterns.
Which book is the best one to buy, and should I even go for the SCJD? $400 is a lot for a test, and with all the nifty video game systems coming out this year, my budget is limited...
Regarding your SCJD question, I recently got my SCJD certification and I would recommend it. It's probably a matter of personal preference, but I liked writing the project's application rather than taking a multiple choice test such as the SCJP.
The key areas are Swing (JTable), sockets or RMI, java.io, and threading/synchronization -- so you seem well-qualified. I just used a few simple design patterns.
Check out the SCJD forum here on JavaRanch. I found it very useful, because the requirements (intentionally) include a number of vague or seemingly contradictory statements.
I didn't use any special books, just: - Sun's Core Java books (Vol 1 and 2) - Java Swing (by O'Reilly) - Sun's Java Look and Feel Design Guidelines (basic and Advanced); much of this information is available on the Sun web site - Head First Design Patterns (by O'Reilly)
However, if I were just starting now, I would probably purchase the SCJD book by Andrew Monkhouse. (It was published after I had finished most of the project.) Andrew responds to a lot of questions on the SCJD forum, and he does a great job answering without giving too much information away.
And there is no time limit for the project part of the certification. (There are two parts to the certification: the project part, and then an essay part to ensure that you wrote the application. The essay part has a 1-year time limit.)
Lasagna is spaghetti flvored cake. Just like this tiny ad: