• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Passed SCJD, here's my design decisions:

 
Ranch Hand
Posts: 72
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
As promised, here is how I solved the SCJD exam.
I am listing everything that I wasn't certain about during my design, and what I decided. I hope that is is useful to others:
1) I modified the database as opposed to extend it. Seems like everybody did this.
2) I altered the LOCK/UNLOCK signature to also include the "user ID" as well as the record that gets locked. Seems like the most common solution.
3) Remote vs. Local mode: I created an INTERFACE called "FlightDataInterface". I then created two classes called "FlightDataLocalMode" and "FlightDataServerMode" which both implemented the "FlightDataInterface". My CLIENT used an instance of the "FlightDataInterface" so I could pass it "FlightDataServerMode" or "FlightDataLocalMode" depending upon mode of operation. This let me have one class to handle either mode of operation. As far as I can tell, this is the obvious way to solve this, and most people take a similar approach. There are certainly others.
4) I used RMI instead of Sockets (since they were easier to use). I don't know anybody who used sockets.
5) For my command line arguments, I gave the user two options. The user could enter NO COMMAND LINE arguments, and then the program would prompt the user to enter the necessary information. However, the user could also enter command line arguments preceeded by a flag such as "-PORT=1099". I basically wasn't certain if I was allowed to use the flags such as "-PORT", so I played it safe offering two options.
6) For the deprecated methods, I pretty much used the standard solution that everybody uses on this news group and has been posted a billion times. I used "UTF-8" as my encoding string.
7) My GUI was very simple. I had a simple window for my SERVER, and a simple, bare bones GUI for my CLIENT. I provided what was asked for and no more.
8) For my "how to run" the CLIENT and SERVER, I included *BOTH* an HTML and a plain ASCII file for each one.
9) For my design document, I wrote it using straight ASCII. The assignment doesn't say what to use for this, so I played it safe. Got perfect on my docs, so I guess this was OK.
10) For my "README.txt", I listed EVERY file I was submitting. This was a pain. But, I didn't want to lose points on this, so I played it safe.
FOR THE ESSAY:
I already posted a pretty detailed overview on how to prepare for the essay exam in early February of 2002. I think that reading that will allow anybody to prepare for that part.
HOW LONG FOR RESULTS:
It seems that after Sun gets both your assignment and your essay, you should get an answer after 2 weeks.
If you don't hear anything after that, call to see if SUN has both your essay and your assignment. In my case, Prometric lost my essay. I called SUN after two weeks and found the missing essay exam problem. It took over two weeks and a million phone calls from me before SUN did anything about the problem, so you have to keep all over them. However, after they got both, it took me two weeks to get my results.
SCORE:
Total Score: 135
General Considerations(maximum = 58): 48 Documentation(maximum = 20): 20
GUI(maximum = 24): 18
Server(maximum = 53): 49
 
Ranch Hand
Posts: 55
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Donald,
Great job ..!!! Congrats ..!!!

Regards,
Krishna
 
Ranch Hand
Posts: 3451
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations Donald!
What's next?
Michael Morris
 
Ranch Hand
Posts: 93
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations Donald!
1) I modified the database as opposed to extend it. Seems like everybody did this.
did you mean Data class? if not pls. explain the point.
do we need to prepare for essay exam. i mean, need extra efforts to prepare the essay exam still if you do the assign. your own.
regards,
sanjeev.
 
Donald Wedding
Ranch Hand
Posts: 72
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by sanjeev mehra:
Congratulations Donald!
1) I modified the database as opposed to extend it. Seems like everybody did this.
did you mean Data class? if not pls. explain the point.
do we need to prepare for essay exam. i mean, need extra efforts to prepare the essay exam still if you do the assign. your own.
regards,
sanjeev.



1) Yes, I meant "Data Class"
2) As far as preparing for the essay, in my not so humble opinion you NEED TO PREPARE for the essay. You don't need to prepare much, but you do need to prepare some. For example, you might get asked to explain you locking code. Well, if you wrote that code 3 months earlier and had not looked at it since you will not remember how you coded it. So you will need to do some preparation.
What should you study? Well, I think I posted a pretty comprehensive guide to preparing for the essay exam back in February of this year. I would look at that!
Of course, others are right when they say that you can't pass unless you write your own program, but you still need to prepare.
 
Ranch Hand
Posts: 2379
MySQL Database Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congrats and thnx for such a good analysis...
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic