Thanks to everyone in the SCJD forum! Grade: P Score: 354 Comment: This report shows the total 1.4 SCJD points that could have been awarded in each section, and the actual number of points you were awarded. This is provided to give you per-section feedback on your strengths. The maximum possible score is 400; the minimum to pass is 320. General Considerations (maximum = 100): 98 Documentation (maximum = 70): 69 O-O Design (maximum = 30): 27 GUI (maximum = 40): 36 Locking (maximum = 80): 44 Data store (maximum = 40): 40 Network server (maximum = 40): 40 TJ SCJP, SCJD, SCWCD
Hi Terry, Congrats on winning the appeal and on passing too Can you answer us a couple of questions please. 1. Can you give us an overview of your locking mechanism? 2. Did you deal client crashing? 3. Did you implement safe server shutdown? Any comments would be greatly appreciated. Thanks.
Joined: Oct 18, 2003
Thanks Satish and everyone. Locking - Mine was pretty basic, modeled after Max's book, no fancy lock manager or anything like that. I used the lock mechanism for the logical record locking and synchronization where appropriate for physical record locking. Of course, I lost a big chunk of points for locking and got the famous 44 score. Client Crashing - I did not deal with it. Clients in my app don't explicitly call the lock methods (thin client, with locking done server side via business methods in Data class). Safe server shutdown - I had a very simple server gui to kick off the server and it also provided a shutdown button. Shutdown closed the appropriate database file and removed the binding, but did not notify clients or do anything fancy. To change properties, you shutdown the whole thing and start it up again. I did not use that shutdown hook approach that has been mentioned out here before. I really focused on keeping my assignment simple (the KISS method). However, that almost killed me with the 48 hour rule as some of the SCJD'ers know from my detailed postings out on the forum. Good luck! TJ
Joined: Aug 12, 2003
Thanks Terry for the detailed reply. Appreciate it.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com