Hey guys, passed the
SCJD certification with 369 out of 400! I didn't post much here but I read this board (and others) everyday and I honestly believe I wouldn't have passed without doing so. Thanks to everyone who posted questions and especially those who answered them!
Here's the breakdown:
General Con: 100 88
Documentation: 70 70
OOD: 30 30
GUI: 40 31
Locking: 80 80
Data Store: 40 40
Network Server: 40 30
Total: 400 369
Not too sure what "General Considerations" actually encompasses so I can't really comment on why I lost 12 points there. As for the GUI design, I kept things pretty basic as I'm not really a GUI kind of guy. One thing that might have hurt me here is my conscious decision to keep everything on the GUI
thread, even remote server calls and DB lookups. Just wasn't worth the trouble in my opinion.
Finally, I don't know what happened in the network server part, either. I used an RMI-based approach which I thought was very straightforward. My total network related code couldn't have been more than 10 lines (basically just RMI registry creation and lookup, remote "wrapper" for the DB server).
All in all I'm pretty happy with my score. I will say that the one thing that really helped me out the most was having
unit tests for almost the entire code base, especially the classes that deal with the low-level I/O to the database file. It was a pain to get that stuff up and running so I appreciated the confidence the automated unit tests gave any time I needed to refactor or optimize. I didn't write any
JUnit tests for the GUI classes and it definitely showed; there were far more bugs in that component than in any other.
Anyways, thanks again everyone!