25 of 25 people found the following review helpful:
3.0 out of 5 stars
Should be titled "Supplementing VB Projects With VC++", December 12, 2000
This review is from: C++ for VB Programmers (Paperback)
I have been waiting for YEARS!! *FINALLY*, there is a C++ beginner's book for the VB crowd!! I was beginning to think that if I ever figure this stuff out myself I'd have to write a book of my own, the first of its kind. Now I know I don't have to. :)
Unfortunately, the book is not intended to help you develop C++ projects. Rather, the book is intended to allow you to utilize Visual C++ to enhance your VB applications. The first half of the book relates to the basic C++ syntax, pointers, and OOP concepts, the latter half of the book focuses almost entirely on deploying COM objects with Visual C++.
In other words, this book will NOT take a VB programmer and make him a C++ applications developer. It would certainly give him a boost in that direction, with some guidance from other resources; however, that is not the objective of this book. The objective is clearly to help VB programmers supplement their VB projects with C++ components.
Morrison has an approachable writing style. He tends to take the approach, "Here's what you might do in VB, now here's how the same thing looks in C++". I like that approach, but unfortunately it sometimes comes with pages upon pages of mundane VB source code and its C++ counter-blob. C++ files are seperated by source code comments, or sometimes not at all, with poor consistency. I would rather have seen either a tree diagram of the final file structure or a digital copy of the source on the CD-ROM. I'm rather irritated with the publisher for including a CD-ROM that doesn't have a copy of the source code from the book! There should have been PLENTY of room left over to throw in the source. Fortunately, the source code can still be downloaded from the publisher's web site.
One important thing that should be noted: This book is mistitled. It should be __VISUAL__ C++ for VB Programmers, not C++ for VB Programmers. The book clearly targets the Microsoft VC++ IDE.
If you intend not to supplement your VB projects but to dive into real-world C++ applications, this book should be accompanied with a few other VC++ books, as there will likely be a need to retrieve alternative explanations of various concepts or language features in order to fully understand them. I've found these books to be the best: C++ Primer Plus (Steven Prata; MacMillan), Programming Windows (Charles Petzold; Microsoft), Visual C++ 6.0 Bible (Leinecker and Archer; IDG), and Programming Microsoft Visual C++ (Kruglinski, others; Microsoft).
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
8 of 8 people found the following review helpful:
4.0 out of 5 stars
BUY the book, READ it, and KEEP it around, but be warned..., November 25, 2001
This review is from: C++ for VB Programmers (Paperback)
This book is must for VB programmers who want to extend the functionality of their projects. For the most part, the book is technically sound and logically organized. The formatting of code, however, left something to be desired, as it was often awkward/inconsistent in the spacing and indentation of code, and it was often difficult to see where one function/property ended and another one began. The thing is, it was fine in some places, yet horrendous in others.
If you can put aside the cosmetic shortcomings, then this book has a lot to offer. The topics discussed could easily fit into two or three volumes, but this book is fairly "to-the-point" and gets the job done in one. The author's style is entertaining and informative, and it is written like he is speaking directly to you. The size of the book is not intimidating, and the material is easy to digest in a relatively short time (my company wanted to use a third-party C/C++ library which VB could not directly use, so I had to build a proprietary ActiveX COM object with methods, properties, events, etc. -- having had no prior C/C++ experience, I successfully completed this task within 2 weeks while reading the book). For that, this book was a life-saver!
The author will get you started on developing VC++ components for your VB projects, but it's up to you to learn more (he references further reading materials in several of his chapters). It is also a decent reference book once you've read it over and implemented some of the techniques and worked through some projects.
If you have any prior C++ experience, you can jump straight to Chapters 9-10 to learn about writing VB-accessible DLLs, and you'll quickly start learning about ATL by Chapters 11-12. Appendix B (on BSTRs) is also a very useful, and ties in tightly with Chapter 12. If you don't read anything else in this book, then at least read these!
Now the bad part: There are minor technical flaws from time to time, but most seasoned VB developers will catch these and identify them as typos. As of this writing, the publisher's website...does not have any corrections listed for the book, but I have sent them a list of about 71 cosmetic updates, about 20 technical issues, and editorial comments for almost all chapters. The downloadable code has many discrepancies from the printed version, which may be an issue if you're comparing notes. Most projects can be built from scratch from listings in the book alone, but the author often neglects to mention specific settings/actions required at compile-time to make things work (e.g., the /MT or /MD flags to compile a multi-threading application). Also, the sample VB client applications lack design-time attributes, so you end up with pages of VB code, and no idea what controls/menus to add (other than trying to figure it out from the code). With one project, in Chapter 10, you *must* download the code from the website since it contains required files, and many attributes which aren't described in the book. The problem is, the code looks different from what is published. But, trying to build the project from scratch from the book alone will drive you nuts! The conceptual explanations on what the code is doing is fairly good, however. It's just annoying when you want to practice building a component (rather than loading up provided code), and meeting a brick wall over and over!
The provided CD-ROM should have provided the printed code (exactly as printed), rather than requiring the reader to download it from the website. The ZIP file I downloaded from the publisher contained most of the code that was in the book, but for the projects where it mattered (Chapters 10 and 12), it was quite different from the published code. For other chapters, having the code would not have made a great difference since the listings were short and easy enough to type in. In some cases (Chapter 8, p. 139 and 144), the author claimed that unprinted code was available for download, but the projects he described were not actually included in the ZIP file. This was also the case for Appendix B (p. 326).
Despite some of the annoyances I found, I would still buy and read this book over again. Don't use it to learn C++, but to augment your VB skills using C++. If you want to learn C++ properly, I recommend Beginning Visual C++ 6, by Ivor Horton (Wrox, 1998).
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No