Hello Pals, I was just reading Kathy's book. I read something to the effect that while implementing something, do not reinvent the wheel. That would ensure losing some marks. w.r.t to implementing the networking part of the assignment, I am certainly for a socket implementation as I have worked with them before. Would I lose marks for making that choice as opposed to RMI? vrinda.
You have a choice regarding the network connection protocol. You must use either serialized objects over a simple socket connection, or RMI. Both options are equally acceptable.
So, I dont think using Sockets instead of RMI results in mark deduction. However, you must well-written the decision option in your documentation that why you choose Sockets over RMI, and the reason for familiar one over another one may not be a good reason. You can find out those arguments from Max's book and Kathy's book. Nick. [ January 11, 2004: Message edited by: Nicholas Cheung ]
Originally posted by Nicholas Cheung: However, you must well-written the decision option in your documentation that why you choose Sockets over RMI, and the reason for familiar one over another one may not be a good reason.
Actually that can be a very good reason. If you look at what RMI can offer you, and compare that with the time required to learn it, you might very well choose to stay with what you know - your project will possibly be completed earlier, and you will have greater confidence in your implementation. Yes, once you know RMI, you will undoubtably build a solution faster than the equivalent Sockets solution, but there is quite a lot to learn to get a good RMI solution working. A sockets solution will also be faster, and use less network traffic than an RMI solution, which can be very good reasons for using it. In their book, Kathy and Bert make the following comment about the choice between Sockets and RMI: "it depends on your goal and need (or in some cases, all things being equal, just which you prefer)". Regards, Andrew
In the real world, using a technique you know over one you don't is definitely a valid approach, and I would happily use it for justification. I might phrase it slightly more professionally than that though. If someone took a team of Java programmers and told them to write their next application using PERL, you wouldn't expect a top quality piece of software to be delivered on time. Either the dealine or the quality would suffer. For the purpose of the exam, I guess it depends on what you want out of it. Would you rather 1). get the assignment done 2 weeks sooner using X which you already know 2). have to work harder, but end up knowing Y, which you currently don't That is less valid as justification for the exam, but I think could be a significant motivation for you.