Build industrial-strength .NET applications with Visual Basic.
This book gives experienced developers the practical insight they need to build enterprise applications using Visual Basic .NET. Using extensive code examples and a running case study, the authors illuminate the .NET concepts and technologies that offer developers the greatest power and value. They cover the entire process of constructing a .NET application: developing a simple .NET console application; adding a Windows Forms interface; isolating functionality within components; providing database access via ADO.NET; securing your code; and using ASP.NET to create Web applications and services.
Part of The Integrated .NET Series from Object Innovations and Prentice Hall PTR.
About This Series.
.NET ARCHITECTURE OVERVIEW.
1. What is Microsoft .NET?
Microsoft and the Web. Windows on the Desktop. A New Programming Platform. The Role of XML. VB.NET and the .NET Framework. Summary.
2. .NET Fundamentals.
Problems of Windows Development Applications of the Future .NET Overview. Summary.
3. VB.NET Essentials, Part I.
Visual Studio .NET and Console Applications. Hello World in VB.NET. Performing Calculations in VB.NET. Classes. VB.NET Type System. Summary.
4. VB.NET Essentials, Part II.
Strings. Arrays and Parameterized Properties. More about Methods. Optional Parameters VB.NET Utility Functions. Command-Line Arguments. Summary.
5. Inheritance and Exceptions in VB.NET.
Review of Object-Oriented Concepts. Acme Travel Agency Case Study: Design. Inheritance in VB.NET. Access Control. Acme Travel Agency Case Study: Implementation. More about Inheritance. Exceptions. Summary.
6. VB.NET in the .NET Framework.
System.Object. Collections. Interfaces. Resolving Ambiguity in Interfaces Acme Travel Agency Case Study: Step 2. Generic Interfaces in .NET. Delegates. Events. Attributes. Summary.
FUNDAMENTALS OF WINDOWS FORMS.
7. Window Forms.
Window Forms Heirarchy. Windows Applications Using the .NET SDK. Windows Forms Event Handling.Visual Studio .NET and Forms.Under the Hood of a VS.NET Windows Applications. Dialog Boxes. Controls. Using a Checkbox. Using List Controls (ListBox and ComboBox). Summary.
8. Using Controls.
Menus. Toolbars. Status Bars. Calendar Controls. Range Controls. List Controls. DataGrid Control. TreeView Control. Common Dialog Controls. Summary.
FUNDAMENTALS OF THE >NET FRAMEWORK.
9. Assemblies and Deployment.
Components. Assemblies. Private Assembly Deployment. Shared Assembly Deployment. Assembly Configuration. Multi-Module Assemblies. Setup and Deployment Projects. Summary.
10. .NET Framework Classes.
Metadata and Reflection. Input and Output in .NET. Serialization. .NET Application Model. Context. Application Isolation. Asynchronous Programming. Remoting. Custom Attributes. Garbage Collection and Finalization. Summary.
ADVANCED UI PROGRAMMING USING VB.NET.
11. Introduction to GDI+.
Device-Independent Graphics and Abstraction. GDI+ Architecture. GDI+ Structures. Pens and Brushes. A Drawing Program. Clipping Rectangle. Bitmaps and Metafile. GDI+ Memory Management. Text and Fonts. Scrolling. Summary.
12. Advanced Windows Forms.
Modeless Dialogs. MDI Applications. Visual Inheritance. ActiveX Controls. Summary.
13. Programming with ADO.NET.
A Visual Studio .NET Database Testbed. ADO.NET Architecture. Connected Data Access. Parameters and Stored Procedures. SqlDataAdapter and the DataSet Class. DataSet Fundamentals. Database Transactions and Updates. Optimistic Versus Pessimistic Locking and the DataSet. Working with DataSets. Acme Travel Agency Case Study. XML Data Access. AirlineBrokers Database. Schema with Relationships. Typed DataSet. Summary.
14.ASP.NET and Web Forms.
What is ASP.NET. Web Forms Architecture. Request/Response Programming. Web Applications Using Visual Studio .NET. Acme Travel Agency Case Study. ASP.NET Applications. State in ASP.NET Applications. ASP.NET Configuration. Server Controls. Database Access in ASP.NET.
15. Web Services.
Protocols. Web Service Architecture. SOAP Differences. WebService Class and Visual Studio. Hotel Broker Web Services (Case Study).
User-Based Security. Code Access Security. Internet Security. Role-Based Security in .NET. Forms-Based Authentication. Code Access Permissions. Code Identity. Security Policy. Summary.
Calling COM Components from Managed Code. Calling Managed Components from a COM Client. Platform Invocation Services (Plnvoke).
APPENDIX A Visual Studio .NET.
Overview of Visual Studio .NET. Creating a Console Application. Project Configurations. Debugging. Summary.
APPENDIX B Tracing and Debugging in .NET.
The TraceDemo Example. Enabling Debug and Trace Output. Using the Debug and Trace Output. Using the Debug and Trace Classes. Using Switches to Enable Diagnostics. Enabling or Disabling Switches. TraceListener. Listeners Collection. Summary.
For many years, Microsoft Visual Basic has been used as the ultimate rapid application development tool for Windows applications. Its ease of use revolutionized Windows programming, and successive generations of Visual Basic have progressively made it more powerful. VB6 can be used to implement complex multiple-tier applications using COM and COM+ components as well as traditional Windows desktop programs. But you could never quite do everything in Visual Basic that you could in a lower level language such as C++, and many projects would use a mixture of languages, with resulting complexity from interfacing between the diverse environments.
Microsoft's .NET brings a sea change to software development. The powerful Common Language Runtime and the vast .NET Framework class library provide a consistent software platform for all .NET programming languages. Visual Basic now enjoys virtually identical capabilities to other languages, including the new Visual C# and the ever-popular Visual C++, while preserving the basic ease of use and strong RAD features that have made Visual Basic so popular. The Common Language Specification and the Common Type System make interoperability between the different .NET languages almost seamless, while the power of each is such that for most projects you will probably never have to use a mixed language approach, unless other factors such as legacy code or programmer skill sets steer you in that direction.
There is substantial change to the Visual Basic language itself, and VB6 code will not run unmodified in the .NET environment. Also, the new version of the language, Visual Basic .NET, or just VB.NET, is now a fully object-oriented language with features such as interfaces, inheritance, and polymorphism. The result is that there is a definite learning curve when moving to VB.NET from VB6. And learning the new programming language is only part of the challenge. The much greater challenge is learning the .NET Framework and all its capabilities, including Windows Forms, ADO.NET, ASP.NET Web Forms, and Web services.
This book is written for the experienced programmer to help you quickly come up to speed on the VB.NET language and then go on to an in-depth study of the .NET Framework. It is a practical book for practicing professionals, and it has many examples and a realistic case study that continues through many of the chapters. The goal is to equip you to begin building significant applications using Visual Basic .NET and the .NET Framework.
The book is part of The Integrated .NET Series from Object Innovations and Prentice Hall PTR. Other books in the series provide a more a more basic introduction to VB.NET, discuss the issues of migrating to VB.NET, and cover other important .NET languages and topics in the Framework. See the front of this book for a list of titles in the series. This book, in substance and structure, is quite close to the companion titles Application Development Using C# and .NET and .NET Architecture and Programming Using Visual C++. A major difference between those books and this, besides using VB.NET as the language, is extensive coverage of GUI programming, including three chapters on Windows Forms and a chapter on GDI+.
The book is organized into six major parts and is structured to make it easy for you to navigate to what you need to learn. Part 1, consisting of the first two chapters, provides an overview that should be read by everyone. It answers the big question, What is Microsoft .NET? and outlines the programming model of the .NET Framework.
Part 2, consisting of Chapters 3 to 6, covers the VB.NET programming language. Even if you know classic Visual Basic, you should read this part, paying attention to the changes in data types (Chapter 3) and the new object-oriented features (Chapters 5). Chapter 6 covers important interactions between VB.NET and the .NET Framework. The Acme Travel Agency case study, which is elaborated throughout the entire book, is introduced in Chapter 5.
Part 3, consisting of Chapters 7 and 8, covers the fundamentals of Windows Forms. Windows Forms is a set of classes in the .NET Framework for writing graphical user interfaces. Programmers familiar with previous versions of Visual Basic will notice that this significantly changes the programming model, yet also introduces flexibility not previously available.
Part 4, consisting of Chapters 9 and 10, introduces important fundamental topics in the .NET Framework. Chapter 9 discusses assemblies and deployment, which constitute a major advance in the simplicity and robustness of deploying Windows applications, ending the notorious situation known as "DLL hell." Chapter 10 introduces important .NET Framework classes and covers the topics of metadata, serialization, threading, attributes, asynchronous programming, remoting, and memory management.
Part 5, consisting of Chapters 11 and 12, covers additional advanced topics in UI programming with VB.NET. Chapter 11 introduces GDI+, which provides a graphics programming model that is both more powerful and easier to use than the classic GDI model of traditional Windows. GDI+ is also completely accessible through Visual Basic. Chapter 12 introduces some important additional advanced topics, such as visual inheritance, MDI, and the use of ActiveX controls in .NET applications.
Part 6, consisting of Chapters 13 to 17, covers important parts of the .NET Framework that are useful in creating a variety of different applications. Chapter 13 covers ADO.NET, which provides a consistent set of classes for accessing both relational and XML data. Chapter 14 introduces the fundamentals of ASP.NET, including the use of Web Forms, for the development of Web sites. Chapter 15 covers SOAP and Web services, which provide an easy-to-use and robust mechanism for heterogeneous systems to interoperate. Chapter 16 covers the topic of security in detail, including code access security and declarative security. Chapter 17 covers interoperability of .NET with legacy COM and Win32 applications.
Appendices introduce Visual Studio .NET and the debug and trace classes provided by .NET.
The only way to really learn a major framework is to read and write many programs, including some of reasonable size. This book provides many small programs that illustrate pertinent features of .NET in isolation, which makes them easy to understand. The programs are clearly labeled in the text, and they can all be found in the software distribution that accompanies this book.
A major case study, the Acme Travel Agency, is progressively developed in a number of the chapters, beginning with Chapter 5. It illustrates many VB.NET and .NET Framework features working in combination, as they would in a practical application.
The sample programs are provided in a self-extracting file on the book's Web site. When expanded, a directory structure is created, whose default root is
c:\OI\NetVb. The sample programs, which begin with the second chapter, are in directories
Chap03, and so on. All the samples for a given chapter are in individual folders within the chapter directories. The names of the folders are clearly identified in the text. An icon in the margin alerts you to a code example. Each chapter that contains a step of the case study has a folder called
CaseStudy, containing that step. If necessary, there is a
readme.txt file in each chapter directory to explain any instructions necessary for getting the examples to work.
As part of The Integrated .NET Series, the sample programs in this book are designed to integrate with sample programs from other books in the series. The sample programs for each book in the series are located in their own directories underneath
\OI, so all the .NET examples from all books in the series will be located in a common area as you install them.
These programs are furnished solely for instructional purposes and should not be embedded in any software product. The software (including instructions for use) is provided "as is" without warranty of any kind.
The Web site for the book series is
A link is provided at that Web site for downloading the sample programs for this book. Additional information about .NET technology is available at
The book sample programs are available at this Web site as well.
The Web site for the book also has a list of .NET learning resources that will be kept up to date.