|
17 of 17 people found the following review helpful:
4.0 out of 5 stars
Great Introduction to Object Oriented Programming with VB, November 14, 2000
Let me put my review in perspective. I have been programming in one language or another for twenty years. I was the project manager for a Fortune 500 company's e-commerce initiative. I do some consulting on the side. In other words, I consider myself to be a veteran programmer.As you know by now, most programming books fall into one of two categories: expert references, or trivial introductions. Wrox books fall somewhere in between. As a result, these books usually create some controversy over who should read them. I find them to be exactly what I need, and interesting enough to read from cover to cover. "Beginning Visual Basic 6 Objects" is actually a follow-on book to Peter Wright's excellent "Beginning Visual Basic 6." Not surprisingly, this second book focuses on the implementation of object oriented programming (OOP) in Visual Basic. This was an area that I thought was given short shrift in the first book, and so I was eager to read this one. Now, there are many OO purists out there who will assert that VB doesn't support OO programming for a variety of reasons. I would venture a guess that if you are one of these people, then this text is not the one for you. The book opens up with a fly by of its contents, including a smattering of OO theory, ActiveX controls, and even OO design methodologies. Wright makes a few unsupported comments about the benefits of OOP that will have to wait eight or nine chapters before they are born out. Then we start writing classes and have a nice discussion about object interfaces. I particularly liked the discussion about the way VB can "implement" an interface, and how VB can simulate inheritance through the use of containment and delegation. As a side note, I explored the possiblity of implementing interfaces through three levels of objects: given three objects A, B, and C, object B implements object A's interface, while object C implements object B's interface (which includes object A's). This is feasible in C++, but apparently not in VB. This scenario was not covered in the book. Consider this information a benefit of suffering through this review. Object hierarchies are covered next. I enjoyed the chapter-end "questions" which recap the important topics. There have been many times when I have read a book, but when I tried to apply those lessons to a real project, I found myself a little uncertain. By working through these problems, I was able to ride with training wheels. The answers are even provided in the back of the book, which is a welcome feature compared to some of those college texts I read which just beat me up without letting me know if I was right or wrong. The book goes on to cover ActiveX controls in detail, even those without a visible user interface. There were some redundant discussions regarding property pages. Even more disturbing was a complete lack of attention to the PropertyChanged event; this event should be called within the code so that the Properties window within VB's Integrated Development Environment is updated when you make a design-time change. The code within the book does not include this event, and as a result the classes in chapter 8 are not completely functional (they're buggy, but they're not completely broken, either). This last point is worth mentioning: there are quite a few errors in the book. However, Wrox provides an online errata section for every one of their books, and it is a tremendous resource. Chapter 9 is a fantastic introduction to object oriented development. The supplier management case study is a very realistic scenario for most businesses. This case study is continued in the next chapter, when we actually flesh out our design with code. I found these two chapters to be the most challenging as well as the most rewarding of the entire book. They alone are worth its purchase price. The final chapter wraps up with business and utility objects. This is the one area of the entire book in which I was the most keenly interested, and I was disappointed with this treatment, even for a summary. Wrox has been known to stuff their books with relatively useless appendices. This book does not suffer from that affliction. Appendix A is a nice primer for Microsoft Visual Modeler, a UML drawing tool that is based on Rational Rose. Appendix B is a three-page throwaway on database programming (a topic that rightfully should be covered in book of its own), and Appendix C contains the answers to the end-of-chapter questions. Despite its flaws, I found "Beginning Visual Basic 6 Objects" to be an outstanding book. It provided the guidance I needed to take the next step in my VB development education. If you're a novice or intermediate VB programmer who is looking for a mid level exploration of OOP, then this is a perfect place to start.
|