Originally posted by Kim Lauwers:
I received the assigment for the SCJD Java 5 today.
Hi! Welcome, good choice and good luck!
1. How do I start best with the assignment: Do I start from the GUI and develop from there all that is needed, or do I start with the interface I received from SUN?
Different people probably have different approach.
I'll speak for myself. I divided (mentally) the project into 3 sections:
- Data (layer if you will);
- Business/Services/Facade/RMI;
- GUI;
That is also the order I followed. I spent about 1 month on the Data class itself. I find that from bottom-up, you don't have any dependencies. However, when you code your GUI, I find it much easier to rely on a 100% reliable Data layer. The same goes for the Business/Service layer, which took me about 5 days to complete. I spent about 3-4 weeks on the GUI.
But, again, I think it's worth spending a lot of time on the Data class, setup all Exception correctly, write
unit test, try
thread scenarios...
2. I'm having big problems with SUN's interface. Let me explain with an example from the interface:
How stupid is this interface, do I have to put an fa�ade or so before this interface so my code works with Collections and Objects instead of array's and id's of records?
As a data layer, it is pretty dumb. You can certainly (I used the Business delegate
pattern) put a facade for it and use it from your GUI. However, it won't change your assignment and the fact that you must implement all the features in your Data class.
3. How do you start with the random access file? Is there a good site or post on the forum, where this topic is cleared out (thinking about concurrency and stuff). And perhaps the most important, is there an editor or so that I can use to read te file?
If you look for "RandomAccessFile" on the forum, you'll find infinite source of information on it
You could read posts like this one:
NX: Notes on a design that passed 389/400 to give you an good and quick overview.
bye,
Alex
[ April 05, 2008: Message edited by: Alex Belisle Turcot ]