Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Thanks - Passed 150/155

 
Stephen Callaghan
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Not posted much here myself but found discussions especially about the locking a real help. (5 marks lost on "general considerations" - gonna bug me what that could mean!)
Time for the Architects forum
Cheers,
 
Gosling Gong
Ranch Hand
Posts: 51
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congratulations!
can you share your experience on this assignment with us?
 
Stephen Callaghan
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Main thing I would say is keep it simple. I think where i lost marks was trying to be too elaborate. Get a good design , get it working, and then go right through all the code again cleaning it up and getting rid of anything fancy! (For example i started out with a GUI on the server which is complete overkill - went back to command line control and still got full marks there).
Second thing is try and get a design and project plan early on. Its very easy just to keep coding and losing track where you are. (I had a basic UML model which formed the framework of my design and the basis of my documentation.)
Lastly - Document early and frequently - dont leave to the last task!!!
On a technical slant I went for standard RMI connection, command line server, separate lock manager (ticket based), fixed the deprecated methods, new enhanced data class with inheritence, full MVC in the client, selection on origin/destination and carrier. Developed on Mandrake 8.2 and tested on Windows 2000 just to make sure! Used latest JDK 1.3.
Cheers,
Cheers,
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

.. full MVC in the client

Stephen,
Can you comment on your implementation of MVC in the client? I already submitted my assignment, and I also had MVC, but I am not completely happy with my approach. In particular, how did you pass parameters from GUI to controller? That is, if the controller needed some values from GUI controls, how did the controller obtain those values?
Thanks,
Eugene.
 
Stephen Callaghan
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The main concept i use when developing with MVC is that the views are "dumb" and so are the models. THe controllers decide which views and models to tie together and have handles on both. I had a database model which encapsulated most of the information like open/closed , local/remote, current rows, the state of the selection boxes etc and then the views fired events like button pressed etc.
Since the controllers are registered with the views and have a handle on the same model, then the views dont need to pass information just events as the current data state will be found in the model.
Hope that makes sense!
Good luck!
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Since the controllers are registered with the views and have a handle on the same model, then the views dont need to pass information just events as the current data state will be found in the model.

So that means that whenever the values in the GUI controls change, the GUI updates the model, and then the controller gets those values from the model? I actually considered this approach, but what stopped me is that the model will be updated for each incremental change in the GUI control, completely unneccessary. For example, the user may change the number of seats to book 20 times before actually pressing the "Book" button, and the model will be updated 20 times. The other disadvatage that I see is that the GUI bypasses the controller when it updates the model directly. Can you comment on these issues please?
Thanks,
Eugene.
 
Stephen Callaghan
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yip, valid points, especially when dealing with non swing views like html where that would involve alot of network traffic. However, with swing most of the models are already there for you (in the abstract table model , the default model for a drop down etc). Since this is all going on anyway in swing i just wrapped these up in my DatabaseModel. If i wasnt using swing i'd have done it differently (the joys of patterns and the many ways to implement them!)
Cheers,
 
Mark Spritzler
ranger
Sheriff
Posts: 17278
6
IntelliJ IDE Mac Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congrats Stephen. Great score.
I am going to move this to the Certification Results forum
Mark
 
Valentin Crettaz
Gold Digger
Sheriff
Posts: 7610
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Good job Stephen
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic