| Component
Software Review Review by Billy Barron, Delphi Consultants Update for Second Edition (ISBN:0-201-74572-0): The second edition updates the coverage of component technologies such as J2EE. It adds sections on emerging technologies such as Web Services. It should be noted that the author has gone to work for Microsoft and that does put some taint to his views. To help offset this, it had some outside people review and contribute to the Java and OMG related chapters. In any case, you need to be aware of the potential bias. "Component Software: Beyond Object-Oriented Programming" by Clemens Szyperski (Addison-Wesley; ISBN 0-201-17888-5) shows one possible path to extending object-oriented programming. The back cover of the book says that it is going "to take the software industry by storm." My personal opinion is that it has been around for years and already has found its niche. It is not sufficient onto itself to solve the vast majority of software problems. I have also always felt like it is just another buzzword replacing the unsexy word: library. Given those thoughts, you might think that I would be down on a book on this topic. You would be wrong. This book is incredibly insightful into the weaknesses and strengths of OO in addition to being about component programming. I may not always agree with the author's opinion, but he does clearly makes his points and you can understand his reasoning even if you do not always agree with it. The books starts with a typical introduction. This includes market forecasts and standards that are available. After this the book moves into explaining what a component is and what it is not. The book then covers all kinds of topics like interfaces, re-entrant code, polymorphism, composition, and patterns. Even if you are not interested in components, the author's analysis of these topics, which are mostly OO is excellent. The book then compares the different component models available including CORBA, DCOM and JavaBeans. The last hundred pages or so of the book is given over to future predictions. The book weighs in at slightly over 400 pages of small font text. In reality, it is more like a 600 page book. The material is very detailed and analysis heavy to boot. This leads the book to being a slow read that takes a long time to digest. In addition, the material is so dense that it requires quite a bit of mental energy to understand the points and implications of parts of this book as they tend to be deep. In other words, it is not a light casual read, but one when you are ready to do some hard thinking about the nature of software development. In conclusion, "Component Software" is not just a book about component software. It is also a book on OO design and can provide some insights there even if you do not care about component software. It is a book that will provide new insights for any senior level software designers or architects. |