<pre> Hello everyone, I am starting out with the assignment, but have got serious confusions This is going to be my first major java application although i am familiar with developments in C, C++, VB, etc and have built a site called JavaAddicts (http://surf to/javaaddicts) using JSP, MySQL and JDBC On going through the assignments details given by Sun, this is what i have understood (Also, I think this is the main thing i am confused about) The application can be run in two modes : 1) Networked mode 2) Non-Networked mode (Local mode) The structure for the networked mode is as follows: +=========================================+ +===========================+ | +========+ +=======================+ |====>| +=======================+ | | | client |===>| Client side database | | | | Server side database | | | | side | | client part | | | | part with networking | | | | GUI | | | | | | support | | | | | | Handles networking on | | RMI | | | | | | |<===| behalf of the client | | | | | |<br /> | +========+ +=======================+ | | +=======================+ |<br /> | | | |<br /> | VM |<====| Another VM |<br /> +=========================================+ +===========================+<br /> Client Machine Server Machine<br /> Pls guide as to if the above is correct, and these are the only 3 major parts,<br /> if any more are required then pls guide <br /> The structure for the local mode is as follows:<br /> +=======================================================================+<br /> | +========+ +=======================+ +=======================+ |<br /> | | client |===>| Client side database |====>| Server side database | | | | side | | client part | NO | part | | | | GUI | | | RMI | | | | | | | Handles networking on | | | | | | |<===| behalf of the client |<====| | | | +========+ +=======================+ +=======================+ | | | | VM | +=======================================================================+ Single Machine Pls guide as to if the above is correct, and these are the only 3 major parts, if any more are required then pls guide According to me the client side database client part handles the details based on the selections of mode in the GUI as to whether the networking is required or not Since I am a starter i have no experience with Swing and RMI, pls guide me if there are any resources available Also i found out that the Data class provided had methods for adding, deleting and modifying the records, but i don't think i require it because my specifications state the searching of the database and booking seats Pls guide as if adding and deleting of records functionality is to be provided As i told you, that this is the first major project, so pls guide what to build first, the GUI, the client part or the Server Also if any people are just starting out I would like to be a part of them Gaurav Kalra </pre>
[This message has been edited by Garry Kalra (edited August 01, 2001).]
It looks good. I used a four layer design on my assignment. I made the gui ignorant of the Data class, put all of the business and rule based logic in my middle layer which I called FlightServices, had a server layer to provide the RMI interface and locking, and put all of the file access in the Data class. So Data doesn't know anything about locking, because this is not needed when running in local mode. The FlightServices layer either instantiates a Data object or my server object. Both of them implement the same interface. FlightServices has methods such as searchForFlights, BookFlight, getListOfCities. So the gui does not have to know the details of the lock, read, modify, unlock mechanism. Also FlightServices only throws FlightServicesException-s. Please read my article on The Mystery of the Unused Methods to answer your other questions. HTH.