Doing Objects in Visual Basic 2005 (Addison-Wesley Microsoft Technology Series)

Paperback (Print)
Buy New
Buy New from
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 96%)
Other sellers (Paperback)
  • All (19) from $1.99   
  • New (3) from $36.34   
  • Used (16) from $1.99   


“Doing Objects in Visual Basic 2005 is one of the few books that I’ve seen that lays the proper object-oriented foundation to make new Visual Basic.NET developers as well as VB6 veterans successful in moving to the .NET Framework.”

–Paul Ballard, President, Rochester Consulting Partnership, Inc.


“Deborah Kurata’s Doing Objects in Visual Basic 2005 is salvation for every programmer beached on the forbidding isle of .NET object-oriented programming. ‘Right this way,’ she says, leading you confidently into that vaguely menacing interior. Step follows step. Suddenly the daunting and unfamiliar become doable and commonplace. You’re productive again. My goodness, you’re actually enjoying yourself!”

–Ward Bell, V.P., Product Management, IdeaBlade, Inc.

“When is comes to advice on programming objects in Visual Basic, nobody could be better qualified than Deborah Kurata. She’s been doing Doing Objects since VB4, and she doesn’t let us down as we move our classic VB code to the Microsoft.NET platform. From initial analysis and design, through to the final implementation, you’ll find everything you need here to take on the Visual Basic 2005 development environment. This book is a must have for every VB.NET developer!”

–Kel Good, MCT, MCITP, MCPD, Custom Software Development Inc., (

“I’ve long been frustrated that I couldn’t recommend a book on object-oriented fundamentals in .NET. Sure, there were plenty of books on OO syntax. But what good is explanation of syntax if you don’t already understand the concepts? Atlast, we have the successor to the Doing Objects series for classic VB, from which so many of us learned how to think about objects and object design, completely rewritten for .NET. If you’re a VB 2005 developer who needs to add object orientation to your skill set, this is the book you need.”

–Billy Hollis, author/consultant, Next Version Systems

“Deborah Kurata does her Doing Objects thing again! This is the newest book from Deborah which has been completely rewritten from the ground up for the Visual Basic .Net 2005 developer. Anyone needing a solid foundation in object technology, Visual Basic .Net 2005, and Visual Studio .Net 2005 should read this book. Deborah’s presentation of core topics such as class design, object state management, exception handling, events, data binding, validation, data access techniques, and many others is clear, concise, and direct. The clarity of the content, coupled with the hands-on examples make this book an easy read and a must have.”

–Ron Landers, Senior Technical Consultant, IT Professionals, Inc.


“Deborah Kurata continues her tradition of showing both new and experienced Visual Basic programmers the most effective ways to get their jobs done with object-oriented programming.”

–Ethan Roberts, Software Architect, Sundial Software Corporation

“As a VB6 programmer, it was a huge leap for me to go from VB6 to VB.Net; Deborah’s book helped me do that. If you’re trying to make that jump, reading this will enable you to do so with minimal pain.”

–Robin Shahan, VB Developer


The definitive guide to object-oriented development with Visual Basic 2005

Doing Objects in Visual Basic 2005 is the authoritative guide to object-oriented design, architecture, and development with Visual Basic 2005. Author Deborah Kurata is the original pioneer in building object-oriented applications with Visual Basic. In this book she continues to offer clarity and deliver best practices for using object-oriented techniques in Visual Basic 2005. She has been honored with Microsoft’s prestigious MVP designation for her expertise and contributions to the community.

Kurata begins with a concise introduction to core object-oriented concepts and the Visual Basic 2005 features that support them. Next she introduces a pragmatic and agile approach to designing effective applications along with an application framework. From there she walks you through the process of building the user interface, business logic, and data access layers of an application, highlighting key VB 2005 techniques and best practices. Kurata’s step-by-step “building along” activities provide you with deep hands-on mastery; your finished application can serve as the starting point for virtually any custom project. This book


  • Shows how the tools in Visual Studio 2005 combined with a solid object-oriented approach can help minimize the complexities of software development and improve productivity
  • Clearly explains the fundamental concepts of object development: classes, inheritance, interfaces, scenarios, and more
  • Presents a pragmatic agile software design methodology to help analyze and design applications for the real world
  • Covers building the user interface layer using a base form class, programmatic interfaces, and object binding
  • Details building the business logic layer using a base business object class and validation rules
  • Demonstrates how to build the data access layer using ADO.NET
  • Provides best practices and tips for experienced .NET developers, those new to .NET, and for those developers moving from VB6 to .NET



Chapter 1: Introduction to OO in .NET

Chapter 2: Designing Software

Chapter 3: Building Projects

Chapter 4: Building the User Interface Layer

Chapter 5: Building the Business Logic Layer

Chapter 6: Class Tools and Techniques

Chapter 7: Binding the User Interface to the Business Objects

Chapter 8: Building the Data Access Layer


Read More Show Less

Product Details

Meet the Author

Deborah Kurata is cofounder of InStep Technologies Inc. (http://www., a professional consulting firm that focuses on turning your business vision into reality using Microsoft .NET technologies. InStep provides premier software design, development, and consulting services to the most successful companies in Silicon Valley, the San Francisco Bay area, and other locations nationwide. You can reach InStep at 925-730-1000 or at

Deborah has more than 15 years of experience in architecting, designing, and developing successful applications. She has authored several books, including the Doing Objects in Visual Basic series (Sams), Best Kept Secrets in .NET (Apress), and Doing Web Development: Client-Side Techniques (Apress). She also writes for MSDN and CoDe magazine (

Deborah speaks at .NET user groups all over the country as a member of the INETA Speaker’s Bureau ( and at conferences such as VSLive, DevDays, and TechEd. For her work in support of software development and software developers, she has been recognized with the Microsoft Most Valuable Professional (MVP) award. After a hard day of coding and taking care of her family, Deborah enjoys blowing stuff up (on the XBox, of course).

Deborah holds degrees in physics and mathematics from the University of Wisconsin—Eau Claire and an MBA from the College of William and Mary.

Read More Show Less

Read an Excerpt


Welcome to the latest in the series of Doing Objects books. This series started in 1995 with Visual Basic 4.0, when VB could first do objects. At that time, little had been discussed about using object-oriented design and development techniques with Visual Basic. To help improve that situation, almost half of each book in the series was dedicated to helping developers think in object-oriented terms and design an object-oriented application. The other half presented a full-featured solution for building an object-oriented application.

As with each of the other books in this series, this book is about designing and developing great applications for Visual Basic using object-oriented principles. However, today's Visual Basic developer is much more versed in design concepts, so only one chapter of this book is dedicated to design. The remaining chapters provide techniques for building an object-oriented application and a reusable application framework.

Unlike other books that provide reference-type information and short examples with no context, this book presents each topic in a logical sequence, illustrating the techniques by designing and developing a full-featured application. This allows you to readily see how each technique fits into your development activities.

This book also demonstrates how to build an application framework you can reuse in every application you build. With an application framework you can significantly increase your productivity and that of your team.

This new edition of the book was completely rewritten to use the features of Visual Basic 2005, Visual Studio 2005, and the .NET Framework. It makes noassumptions about your experience with .NET. It provides tips for experienced .NET developers and those new to .NET. There are even some tips specifically for developers moving from VB6 to .NET.Why Do Objects?

Everything in .NET is basically an object. You cannot really do anything in .NET without doing objects. But Visual Basic 2005 still allows you to create modules, and it provides default form instances. Thus, you can still pretend to code without objects. So why make the move to using object-oriented techniques in your Visual Basic applications?

  • Objects help you think about an application in terms of real-world things, aiding in the design process.
  • Objects define all their data and processing in one programming unit. All of the code having to do with customers is in one code file, all of the code having to do with products is in another code file, and so on. This makes it much easier to develop, test, and maintain your code and to manage the complexities of software development. It also simplifies multiprogrammer development.
  • Objects allow for building an application framework with base form classes and base business object classes. Common code resides in these base classes and not within every form or code file. This can drastically reduce the amount of code you have to write, test, and maintain.
  • Objects allow you to work with other high-productivity features in .NET, such as object binding.

This book expands on these topics to help you know when, how, and why to do objects in Visual Basic 2005.Who Should Read This Book?

The goal of most Visual Basic developers is to get the job done. You have existing code to maintain, enhancements to implement, and new applications to write—all with limited time and other resources. You need to be as productive as possible. Learning a new version of your programming language and development environment takes away from that productivity. So you need a way to learn the new tools and techniques as rapidly and efficiently as possible.

This book is for developers who need to quickly learn the key features of Visual Basic 2005, Visual Studio 2005, and the .NET Framework and incorporate the new techniques into their daily design and development activities. Specifically, if you are interested in learning how an object-oriented approach and these new tools and techniques can minimize the complexity of software design and development and improve your productivity, this book is for you.

I have many opportunities to talk with software developers at conferences, via newsgroups and e-mail, and through my consulting company. The key concern for many developers is how to come up to speed quickly on the many new features. Bookstores have shelves full of books, but it is hard to know where to begin, how the features interrelate, or even how to find time to do that much reading. The goal of this book is to provide details on the key features in one place and all within the context of designing and building a full-featured application.

This book assumes you are familiar with some version of Visual Basic, even if it is only a classic version like VB3 or VB6. It assumes you know how to write programming logic and put controls on forms. This book is not for people new to programming. Nor is it for developers who have never used a visual programming tool, such as Visual Basic. After you learn the basics, come back to this book to learn best practices for building great Visual Basic 2005 applications.About This Book

This book begins with an overview of object-oriented terms and techniques. It then covers a pragmatic approach to application design, including the design of an application framework. The majority of the book details how to use the tools and techniques in Visual Basic, Visual Studio, and the .NET Framework to build great object-oriented applications.

This book is organized as follows:

  • Chapter 1, "Introduction to OO in .NET": Basic object-oriented terminology and concepts are covered in this first chapter, including specifics on how these concepts are realized in Visual Basic. It also provides an in-depth discussion about the benefits of an object—oriented approach.
  • Chapter 2, "Designing Software": When designing an application, you have many design aspects to consider, such as user interface, business objects, and database. Managing all these aspects is easier if you follow a design methodology. This chapter presents the GUIDS Methodology, a pragmatic approach to object-oriented design.
  • Chapter 3, "Building Projects": This chapter covers the basics of building a solution with associated projects for the user interface, business logic, and data access layers. It includes a discussion of productivity enhancers such as templates and using the built-in Windows application framework.
  • Chapter 4, "Building the User Interface Layer": The user interface of a .NET application is composed of two parts. The outside is the part of the application that the user sees and interacts with. The inside is the code behind the forms. This chapter shows you how to build both parts with reuse and changeability in mind. It also introduces base form classes and programmatic interfaces.
  • Chapter 5, "Building the Business Logic Layer": The business logic layer includes all of the functionality of the application. This chapter details how to build classes with appropriate properties and methods. It also introduces base business object classes and -generics.
  • Chapter 6, "Class Tools and Techniques": Visual Studio has many fun tools to help you build your application. This chapter covers the Class Designer, Object Test Bench, code snippets, and unit tests. It also covers more advanced techniques such as building master/detail classes.
  • Chapter 7, "Binding the User Interface to the Business Objects": Visual Studio provides enhanced features for binding your user interface elements to business object properties. This chapter describes binding and details how to perform object binding. It also covers how to write code to validate user-entered -values.
  • Chapter 8, "Building the Data Access Layer": Most applications require some type of data. This chapter details how to build a database. It then covers how to build a data access component that uses ADO.NET to retrieve and save data in a database.
"Building Along" Activities

It is often easier to learn by doing. So this book provides "building along" activities in each development chapter. You can build along with these activities to construct the sample application.

By the time you reach the end of the book, you will have a full-featured Windows application that demonstrates many of the techniques presented in this book. You will also have the basics of an application framework that you can reuse in all your applications.

In addition, each chapter includes a "Try It!" section. If you don't have time to build the entire sample application, you can download the sample code and extend several features using the "Try It!" sections. This provides a facility for you to practice what you are reading without the commitment of building the entire sample application. Note, that many of the "Try It!" exercises build on prior "Try It!" exercises to demonstrate how the techniques build on one another and work together to form a complete application.What You Need to Use This Book

To work through any of the techniques, "building along" activities, or "Try It!" section exercises, you must have some edition of Visual Basic 2005. You can download the free Visual Basic 2005 Express Edition or use any other edition of these tools. In some cases the Express Edition does not provide a feature discussed in this book. These cases are clearly indicated in the text.

When you launch Visual Studio 2005 for the first time, you are asked to select your default development settings. The settings you select affect the names of many of the menu options, the layout of some of the dialogs, and other features of Visual Studio. This book uses the General Development settings, because they are the most common settings used by .NET -developers.


Note - If you have your Visual Studio set to use the Visual Basic Development settings instead of the General Development settings, many of your Visual Studio options and some of the dialogs will be different from those in this book. You can continue to use your settings and work with the differences, or you can change your settings.

To set your Visual Studio settings so that your environment matches the one used in this book, select Tools Import and Export Settings. Select Reset All Settings and click Next. Choose whether to save your current settings, and click Next. Select General Development Settings, and click Finish.


Although you could use any database product, to work through all the techniques in Chapter 8 you should also have access to a version of SQL Server. You can use SQL Server 2000 or any edition of SQL Server 2005. If you don't have SQL Server, you can download the free SQL Server 2005 Express Edition. If you want to use Microsoft Access instead, notes are provided in Chapter 8 about the features of Visual Studio 2005 that do not work with Access.Downloading the Code

You can build all of the code for the sample application from instructions in this book by following the "building along" activities. However, you may not have time to work through every example. If you want to download the code, you can find it at

I have made every effort to describe the concepts presented in this book in a clear and concise fashion. I have tried to ensure that the book is up to date as of this writing. And I have worked with the technical reviewers and technical editors to confirm that there are no errors in the text or code. However, mistakes are possible, and improvements are always welcome.

If you have suggestions for improving the content of the book, or if you find something that is incorrect or unclear, I would like to hear from you. I can then incorporate your comments in future editions of this book. You can reach me via e-mail at

© Copyright Pearson Education. All rights reserved.

Read More Show Less

Table of Contents

Foreword xvii

Preface xix

Chapter 1: Introduction to OO in .NET 1

Chapter 2: Designing Software 39

Chapter 3: Building Projects 99

Chapter 4: Building the User Interface Layer 151

Chapter 5: Building the Business Logic Layer 251

Chapter 6: Class Tools and Techniques 307

Chapter 7: Binding the User Interface to the Business Objects 357

Chapter 8: Building the Data Access Layer 439

Index: 503


Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 3 Customer Reviews
  • Anonymous

    Posted October 31, 2007

    somewhat disappointing

    the book is 'ok...'. I was somewhat disappointed from its 'old taste'. It basically felt like a 1995 book being re-written for new technologies. Take for example the MDI (multiple document interface) discussion, it is so passe'. Also, great many pages are devoted to illustrate step-by-step ations done when using the Visual Studio tool. There are online manuals for that. The book should have concentrated more on building classes, design, and patters. For the latter, 'Patterns', there was just a cursory note of it, referring the reader to the GoF book. One great disadvantage the book has is that it targets only the audience that has a VB 6 background, wants to use Visual Studio 2005, and wants to code in VB.NET. With VS 2008 knocking on the door, this new book will have a short shelf life. Yet, this book being narrowed to just VB.NET, I didn't find any discussion about the problems with late binding and not setting Strict Option On, something that a C# developer would be very interested to know about. On the discussion about 'casting', there was no reference that the cast occurrs at run-time, and is not caught by the compiler (as it is in C# environment).

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted March 26, 2007

    Great book for windows apps

    This is a great book to learn how to build a VB win form app from start to finish utilizing a cohesive object oriented framework. It covers virtually every aspect from design philosophy, creation of the application tiers (UI, business and data), designing the DB and SPs, error handling, validation and host of other subjects. The book is only 518 pages but it packs a lot of info. The concepts were presented clearly and they were easy to understand and implement in addition there were quite a lot of helpful tips. It happened that I was just starting an application while I was reading this book so I decided to go ahead and use her framework and a number of the design patterns - It worked very well, I found one minor error in the sample code and I made some modifications to implement some additional features but the code basically worked out of the box. If you do use her object model in an application and the business objects are based on database tables I would recommend purchasing Codesmith (a code generation tool) or a similar product before starting your project since creating the business layer is fairly code intensive. With Codesmith you can create her basic class structure as a template and it will generate the code for the business and data access layers based on the table. Now that I have the first app under my belt I plan to use the framework on any future win form apps that I develop. I highly recommend this book for lower intermediates to advanced developers if you¿re completely new to VB this could be a little over your head.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted March 16, 2007

    object oriented design and coding

    Kurata's book is an advanced course in Visual Basic 2005. It assumes you already the basic syntax down, so it doesn't waste any space going over that. Instead, it plunges immediately into object oriented design and coding. At the design level, the discussion is largely independent of VB2005 and the .NET framework, as it should be. You learn the general approach of an n-tier architecture. Often into a presentation layer, a business logic layer and a data access layer. There's even a brief foray into explaining a Service Oriented Architecture. The bulk of the text then goes into coding out a design. Here is where the strong support that Visual Studio gives the programmer comes into play. The utilities are numerous, and encompass a comprehensive framework. From writing code to compiling and running it. For a reader new to all this, the easiest aspect to appreciate might be when writing the presentation layer. Visual Studio has an easy graphical way for you to put together the various widgets that you want in this layer. Plus, and just as importantly, Visual Studio autogenerates much of the corresponding code - all the pure boilerplate, that would otherwise be tedious and error-prone for you to do.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 3 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)