This week's book giveaway is in the OCAJP forum.
We're giving away four copies of OCA Java SE 8 Programmer I Study Guide 1Z0-808 and have Jeanne Boyarsky & Scott Selikoff on-line!
See this thread for details.
The moose likes Certification Results and the fly likes Passed SCJD - URLyBird 1.3.1 362/400 Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCA Java SE 8 Programmer I Study Guide 1Z0-808 this week in the OCAJP forum!
JavaRanch » Java Forums » Certification » Certification Results
Bookmark "Passed SCJD - URLyBird 1.3.1 362/400" Watch "Passed SCJD - URLyBird 1.3.1 362/400" New topic
Author

Passed SCJD - URLyBird 1.3.1 362/400

K. Tsang
Bartender

Joined: Sep 13, 2007
Posts: 2673
    
    9

Hello all, I passed SCJD (URLyBird 1.3.1) today (362/400). The distribution is as follow:
General Consideration: 99/100
Documentation: 70/70
OO Design: 30/30
GUI: 39/40
Locking: 44/80
Data class: 40/40
Network Server: 40/40
Total: 362/400

Overall I could have done better in locking section. This is because I used my customized class to keep track of locked records instead of using standard Java API. Anyway for me. Below are my pointers:

Generation Considerations
* use Sun coding standards
* think like a junior programmer in areas of design and coding logic
Don't know why that single point got deducted?

Documentation
* user guide = HTML format, screen shots for everything (errors, app windows etc), provide quick start guide
* javadoc = provide javadoc comments for private members/classes, generate javadoc comments for protected/public members/classes
* choices.txt = describe requirements, assumptions, use cases, architecture, networking, participants, each layer of the app

OO Design
* uses 3-tier architecture: GUI, service layer, data layer
* separate each class accordingly to responsibilities as much as possible
* package source code/classes accordingly to as if it is 3-tier app (I have 4 packages: client, data, server, helper)
* no anonymous inner classes
* inner classes are all private
* group helper classes into its own package

GUI
* use Swing Action rather than ActionListener interface
* have menu bar, JTable, button panel, status bar
* buttons in the button panel and the menu items in the menu bar are controlled by list selection model and some "actions" are disabled by default until a table row is selected
* use table cell rederers to position/align numbers and dates
* no column sorting for table
* provide refresh view button/action to get latest data's image
* provide create, delete, check out functions in the GUI
* status bar display message as user operates the app (eg when such and such window opens)
* status bar display number of connected users (for network mode only) - use Swing Timer to update, act as server keep-alive
* provide tool tips for table columns and rows
* use my own table model (inherits AbstractTableModel)
* position window in the middle of the user computer's screen (using ToolKit)
* didn't use GrigBagLayout, only BorderLayout, FlowLayout and at times GridLayout

Locking / Data Class
* have my own interface extending Sun provided interface
* Data class implements my own interface (extended one)
* use my own class to manage locked records (didn't use standard Java API)
* act as service layer (interface LocalService) in stand-alone mode - delegate to Data class
* Data class is singleton

Network Server
* use RMI
* didn't use rmic to explicitly generate stubs
* act as service layer (interface RemoteService) in networked mode - delegate to Data class
* display connection and disconnection messages
* provide server connection checking when clients connect (if server IP/port are correct)
* provide server shutdown using shutdown hook


Thanks to all the people who helped me during the assignment.


K. Tsang JavaRanch SCJP5 SCJD OCPJP7 OCPWCD5 OCPBCD5 OCPWSD5
arulk pillai
Author
Ranch Hand

Joined: May 31, 2007
Posts: 3277
Congrats


500+ Java Interview Questions and Answers | Java job hunting know how & Java resumes
Cameron Wallace McKenzie
author and cow tipper
Saloon Keeper

Joined: Aug 26, 2006
Posts: 4968
    
    1

Conratulations! And thanks for the great feedback.

-Cameron McKenzie
Hong Anderson
Ranch Hand

Joined: Jul 05, 2005
Posts: 1936
Congrats


SCJA 1.0, SCJP 1.4, SCWCD 1.4, SCBCD 1.3, SCJP 5.0, SCEA 5, SCBCD 5; OCUP - Fundamental, Intermediate and Advanced; IBM Certified Solution Designer - OOAD, vUML 2; SpringSource Certified Spring Professional
Krishna Srinivasan
Ranch Hand

Joined: Jul 28, 2003
Posts: 1844

congrats!!


Krishna Srinivasan
Spring Tutorials, OCAJP Mock Questions, 400+ OCPJP Mock Questions
 
jQuery in Action, 2nd edition
 
subject: Passed SCJD - URLyBird 1.3.1 362/400