|
|
3.0 out of 5 stars
Not just for practitioners..., 6 Nov 2004
By A Customer
The spiel on the back cover of this (fairly thick) book says "Java for Practitioners doesn't just provide an introduction to Java, it also tells you all about object orientation". True to the aforementioned, John Hunt's book really does deliver in this area.The book is divided into 5 parts. The first few chapters of Part 1 really excel in the introduction of object orientation; the history of OO is briefly covered, but, crucially, the concepts and terminology of OO are explained in a progressive manner with examples and diagrams. The next dozen chapters illustrate how these concepts are implemented using the nuts and bolts of Java, culminating in a small 'personal organizer'-type program. The way on which each chapter builds on the previous make this a pleasurable and satisfying book to read. Part 2 builds on the learning of the previous chapter, and introduces graphic user interface (GUI) programming to the student. I can honestly say that I had not got to grips with this stuff at college but the author explains the concepts in such a lucid manner that I was writing small GUI-based practice programs after only a few chapters. The content moves on from GUIs to applets, concurrency, exceptions, streams and files, serialization, sockets, RMI...it was at this point that I skipped straight to the last chapter of Part 2 but more good stuff such as Servlets, JDBC, and JavaBeans are covered should the reader be interested. Part 3 seems to exist as a consolidation point, providing the student with guidelines and pointing to common pitfalls before ending with a nice Self-test examination. So far so good! Unfortunately, the book now seems to lose its way... Part 4 aims to tackle the concept of Object-Oriented Analysis and Design. This would be the part of the book that should deliver the most, but actually doesn't. It all starts well enough by providing a brief insight into a number of OOA/D methodologies, before concentrating on OMT and UML. A case study (hooray!) of an online ATM is used to illustrate use case analysis, object modelling, dynamic modelling, functional modelling, design, and implementation. GUI layouts are drawn up at an early stage... but without any code. :-e The next chapter covers the subject of Object modelling reasonably well but the chapter on Dynamic Modelling is where the frustration really starts: the only collaboration diagram shown is incomplete and the remaining diagramming is left as an 'exercise for the reader'. State machine diagrams confused me, and this was not helped by the fact that the author did not guide the reader through the creation of the diagrams for the case study; instead he placed them all on a couple of pages and left the reader to work it out for himself/herself. The chapter on Functional Modelling is even worse: at the end of the chapter, the author presents a table of operations for the all objects in the case study but without showing a single scrap of the analysis required in order to obtain them. At this point, it is even suggested that the reader "should consult a variety of object-oriented design books as well as practising the design process yourself" It was at this point that I gave up; the following chapter on Design and Implementation was too abstract for me to even contemplate reading. And even with all these omissions, where was the code to implement this design? This may seem harsh criticism but don't be put off. Java for Practitioners is not just for practitioners but for students as well, and I do recommend you give it a look if you need to learn Java and object-orientation, whether you're a student or a professional. Overall, a good book.
|