Wide Coverage from Pure to Microsoft-centric Java

Covers the Visual J++ 6.0 IDE, J/Direct and WFC development, pure Java basics, and database development.


To suggest that there are several Visual J++ ‘Secrets’ waiting to be discovered within these pages may be a bit of an overstatement. The first ‘Secrets’ book I read dove under the Java hood and showed readers how to use undocumented Sun classes, and how to leverage a number less than obvious Java techniques that qualified as little known (secrets). I was predisposed to expect something similar in "Visual J++ 6 Secrets". Taken as a normal Visual J++ 6.0 book, there’s plenty of useful information in these 700+ pages, probably enough to warrant the $59.99 price tag, but very little of it qualified as ‘secret’ information.

The book is divided into four major parts. Part I, "Dealing with Visual Studio", stays focussed on the development environment, covering the IDE, debugging techniques and bundled tools. Part II, "Visual J++: Java with Cream and Sugar", takes a good look at the Microsoft approach. The book is pragmatic about all this, taking the basic position that portability is not always the priority and there are circumstances which demand tighter coupling with the operating system or COM interoperability, facilitated by the Microsoft VM and proprietary extensions. Part II covers J/Direct, COM, DCOM, OLE and ActiveX programming, MS security issues, using JavaBeans as ActiveX controls, packaging and deployment, dynamic HTML, using the controversial Microsoft delegates and working with the Microsoft Transaction Server. The last chapter is especially interesting and covers material not found in much of the J++ literature.

Part III, "Developing 100% Pure Java with Visual J++", falls a little short of what’s really needed here. This section covers pure Java reasoning, event handling, graphics, file handling, interfaces, data structures, web programming, networking and threads. Chapter 16, "Advanced Graphics", covers only the Java 1.0 and 1.1 graphical capabilities. There is no coverage of either Swing/JFC components nor the 2D Graphics API. Readers familiar with the 100% Pure Java approach and looking for Microsoft-specific information that was not delivered with the J++ documentation package can safely skip this part of the book without loss. There are absolutely no secrets to be discovered in these pages.

Part IV, "Database Development in Visual J++", provides a nice cross-section of the database development options available with J++. There are at least two Microsoft-centric approaches to database programming - ActiveX Data Objects (ADO) and Data Access Objects (DAO). Of course, if you want to remain platform-independent, you need to consider JDBC, which is also covered. Part IV does a pretty good job of presenting each of these technologies and providing enough information to make intelligent choices about their applicability. I found the JDBC coverage a little terse and the use of Hungarian notation in all the code examples a little messy and not very Java-centric, but these were mere annoyances.

If you you’re one of the many developers who use J++ as your primary development environment, whether you’re developing portable 100% Pure Java or Windows-centric applications, you’ll find good information in the IDE coverage. The J/Direct and WFC chapters are useful but the chapters that cover MS security and the Wallet interface, working with the Transaction Server, and using delegates, provide information seldom presented anywhere else. The database chapters also bring a lot of potentially useful options to the table, especially if you need make an informed decision about one of the covered technologies. Whether this book is a good investment for you depends entirely on how important these areas are to you and how valuable this information is to your development efforts.