loading...
June 2004 (Vol. 5, No. 6)
1541-4922/04/$25.00 © 2004 IEEE

Published by the IEEE Computer Society
A Valuable Resource of Programmers Using .NET Technology
Helen Karatza
  Article Contents  
  THE BOOK'S STRUCTURE  
  THE BOOK'S STRENGTHS  
  Conclusion  
Download Citation
   
Download Content
 
PDFs Require Adobe Acrobat
 

    Distributed .NET Programming in VB .NET

    By Tom Barnaby

    506 pages

    US$49.95

    Apress, 2002

    ISBN 1-59059-068-6

A great demand for efficient distributed applications has emerged. However, designing and developing these applications isn't easy. For this reason, new techniques and platforms for distributed programming are developing.
For applications to be deployed efficiently, the programmer or developer must have solid distributed systems knowledge, including knowledge of the system architecture and network configurations. Distributed .NET Programming in VB .NET by Tom Barnaby focuses on the new development platform .NET. Barnaby describes technologies you can use to develop efficient distributed applications with .NET, including such technologies as .NET Remoting, Web services, serialization, COM+, and MSMQ.
THE BOOK'S STRUCTURE
The book is well-written and clearly structured, with each chapter contributing interesting perspectives to the volume's overall objective. Barnaby uses the introduction to establish this objective and answer some frequently asked questions. Then, over the first few chapters, he covers the basics such as distributed programming's evolution and using .NET in distributed programming.
Chapter 1 introduces five principles of distributed design and provides several examples of how to apply these principles during application development. Chapter 2 presents .NET issues relating to assemblies, garbage collection, attributes, reflection, and serialization. And Chapter 3 introduces the .NET Remoting Framework.
These chapters provide the framework needed to understand more rigorous material in the succeeding chapters. Although you could skip Chapter 1 without any serious consequences, it's useful because it introduces .NET's importance to distributed programming's evolution. Chapters 2 and 3 are easy to follow and provide useful definitions and distinct categorizations of the material.
The book's main ideas appear in Chapters 4 through 9. These chapters are clearly presented, but because of the topics' complexity, they require considerable effort and persistent reading. In Chapter 4, Barnaby describes implementing the concepts introduced in Chapter 3, such as well-known objects and client-activated objects, and building remoting hosts. These chapters provide enough knowledge to build many distributed applications. Chapter 5 extends into advanced .NET Remoting Framework and presents additional remoting techniques so that readers can exploit all the capabilities of the .NET Remoting Framework. Chapter 6 covers the relationship between Web services and the distributed architecture, and Chapter 7 details the basics of COM interoperability.
The remaining chapters address issues for programmers who need more advanced .NET knowledge. Chapter 8, which explains how the COM+ runtime system uses COM interop to host managed objects, is particularly helpful. It presents efficient techniques for accessing component services from managed code. Chapter 9 describes a messaging technology called Message Queuing (MSMQ), detailing its benefits and proposing when users should access MSMQ instead of .NET Remoting or Web services. The book concludes with an appendix by Andrew Troelsen covering ADO.NET, a database access technology related to disconnected systems and the .NET platform.
Overall, Barnaby presents topics in an appropriate sequence. First, he addresses the concepts and issues that make up the minimum requirement for efficiently developing distributed applications, then he introduces more advanced topics for more specialized programmers.
THE BOOK'S STRENGTHS
In Distributed .NET Programming in VB .NET, Barnaby uses an informal writing style intended to put you at ease. A particular strength of the book is its abundance of helpful examples, including source code, that provide you with a practical knowledge of the subject. You can download most of the book's code from the publisher's Web site (http://www.apress.com/book/bookDisplay.html?bID=144). To run the code, you'll need the latest version of .NET Framework, which you can also download.
Another advantage of the book is that it contains many tables and illustrations designed to augment the written material in each chapter. I found the author's notes, warnings, and tips very useful, and also appreciated the summaries at the end of each chapter. The book provides extensive references and a thorough index.
Distributed .NET Programming in VB .NET is a valuable resource for programmers interested in using .NET technology to develop distributed applications. Barnaby assumes you're proficient in VB.NET and object-oriented programming and also feels you should already be familiar with .NET basics. Nonetheless, he presents a few .NET fundamentals in Chapter 2. He also assumes you'll run examples to strengthen your knowledge of material in the book, but you might also find it necessary to refer to the Microsoft Developer Network to clarify details.
Conclusion
The book's organization, presentation, topic coverage, and clarity are exceptional. I enjoyed reading it and highly recommend it for all developers or programmers who use .NET for distributed applications.
Helen D. Karatza is an associate professor in the Department of Informatics at Aristotle University of Thessaloniki. Contact her at karatza@csd.auth.gr.