| |
| |
Acknowledgments | |
| |
| |
Introduction | |
| |
| |
| |
An Introduction to the .NET Framework and VB.NET | |
| |
| |
Casting the .NET | |
| |
| |
Divide and Rule | |
| |
| |
The First COMing | |
| |
| |
The Elements of COM | |
| |
| |
COM Unbecoming | |
| |
| |
The Second COMing | |
| |
| |
What Is the .NET Framework? | |
| |
| |
The Common Type System | |
| |
| |
Why .NET Is Better | |
| |
| |
Is .NET Another Java? | |
| |
| |
Why .NET Depends of Visual Basic | |
| |
| |
The Legacy of Visual Basic | |
| |
| |
Don't Mind Us: We're Making Moolah | |
| |
| |
Componentware Arrives with OLE and COM | |
| |
| |
Death of a C++ Programmer | |
| |
| |
The Legacy of ASP | |
| |
| |
And the VB Machine Rolls On | |
| |
| |
And then Along Came a Cpider? | |
| |
| |
Entering VB Nirvana | |
| |
| |
True Object Orientation | |
| |
| |
Structured Exception Handling | |
| |
| |
Delegates | |
| |
| |
Interfaces | |
| |
| |
Multithreading | |
| |
| |
Managed Execution | |
| |
| |
ADO.NET | |
| |
| |
ASP.NET | |
| |
| |
Observations | |
| |
| |
| |
Introduction to the Common Language Runtime | |
| |
| |
The CLR Is More, by Far | |
| |
| |
A Hosted Execution Environment | |
| |
| |
An Execution Manager | |
| |
| |
Assembly Basics | |
| |
| |
Assemblies Exposed | |
| |
| |
The Elements of the Assembly | |
| |
| |
Generating MSIL | |
| |
| |
The Common Language Specification | |
| |
| |
Language Interoperability | |
| |
| |
Metadata | |
| |
| |
Down to Executable Code | |
| |
| |
"JIT'er" Bugs Beware | |
| |
| |
Managed Execution | |
| |
| |
Side-by-Side Execution | |
| |
| |
Application Domains | |
| |
| |
Garbage Collection | |
| |
| |
The .NET Security Model | |
| |
| |
Just-in-Time (for Tea) Deployment | |
| |
| |
Observations | |
| |
| |
| |
VB.NET Building Blocks | |
| |
| |
Let the Mission Begin | |
| |
| |
Goodbye World, Hello VB.NET | |
| |
| |
Option Compare, Explicit, and Strict | |
| |
| |
Data Type Conversion | |
| |
| |
VB.NET Operators | |
| |
| |
The Value of True Is--1 | |
| |
| |
Operator Precedence | |
| |
| |
Unary Operators | |
| |
| |
Assignment Operators | |
| |
| |
Relational Operators | |
| |
| |
Concatenation Operator | |
| |
| |
Bitwise Operators | |
| |
| |
Arithmetic Operators | |
| |
| |
Execution Control Statements | |
| |
| |
Branching | |
| |
| |
Decision-making and Switches | |
| |
| |
Iteration Statements | |
| |
| |
Do...Loop | |
| |
| |
For...Next | |
| |
| |
For Each...Next | |
| |
| |
While | |
| |
| |
Arrays | |
| |
| |
Declaring and Initializing Arrays | |
| |
| |
Working with Arrays | |
| |
| |
Working with the Array's Upper Boundary | |
| |
| |
The Erase Statement | |
| |
| |
The IsArray Function | |
| |
| |
Collections | |
| |
| |
The Collections Namespace | |
| |
| |
Strings | |
| |
| |
Working with Strings | |
| |
| |
The Methods of System.String | |
| |
| |
Methods | |
| |
| |
Sub-procedures and Functions | |
| |
| |
Observations | |
| |
| |
| |
Object-Oriented Software Development Using VB.NET | |
| |
| |
Types | |
| |
| |
The .NET Value Type Reference Model | |
| |
| |
The .NET Object Reference Model | |
| |
| |
Inheritance, Encapsulation, and Polymorphism in VB.NET | |
| |
| |
Inheritance | |
| |
| |
Encapsulation | |
| |
| |
Polymorphism | |
| |
| |
A "Real-World" Scenario | |
| |
| |
Designing the Application | |
| |
| |
Modeling | |
| |
| |
Creating Classes | |
| |
| |
Class Visibility and Role | |
| |
| |
Encapsulation at Work | |
| |
| |
Creating a Class Others Can Use | |
| |
| |
Inheritance at Work | |
| |
| |
Implementation in the Parent Class | |
| |
| |
Adding the Methods | |
| |
| |
Object-Oriented Development at Work | |
| |
| |
Inheriting the Implementation | |
| |
| |
Using the Classes | |
| |
| |
Instantiation | |
| |
| |
Observations | |
| |
| |
| |
VB.NET in Action | |
| |
| |
.NET Exception Handling | |
| |
| |
The Exception Handler | |
| |
| |
Exit Try and Finally | |
| |
| |
Nesting Exception Handlers | |
| |
| |
Creating Your Own Exception Classes | |
| |
| |
Extending the Base Class | |
| |
| |
Object Serialization and .NET I/O | |
| |
| |
Serialization Part I | |
| |
| |
I/O Support in .NET | |
| |
| |
Serialization Part II | |
| |
| |
Serialization Part III | |
| |
| |
ADO.NET | |
| |
| |
ADO Revisited | |
| |
| |
Enter ADO.NET | |
| |
| |
Connection Architecture | |
| |
| |
XML | |
| |
| |
Implementing Database Integration with ADO.NET | |
| |
| |
Interfaces | |
| |
| |
Forms | |
| |
| |
Windows Forms and Web Forms | |
| |
| |
The Graphical Login | |
| |
| |
ASP.NET | |
| |
| |
ASP.NET in Action | |
| |
| |
Creating a Simple Web Service | |
| |
| |
Observations | |
| |
| |
| |
Migration to and Interoperability of VB.NET | |
| |
| |
Protecting Your Investment in Existing Code | |
| |
| |
Stay in Classic VB | |
| |
| |
Migrate Code to VB.NET | |
| |
| |
Rewrite | |
| |
| |
Is It Worth Porting? | |
| |
| |
Using the Visual Basic Upgrade Wizard | |
| |
| |
Understanding the Upgrade Process | |
| |
| |
Upgrading COM and COM+ Services Using the Wizard | |
| |
| |
Upgrade Tools for Interop | |
| |
| |
Accessing COM Components from VB.NET Clients | |
| |
| |
Using the TLBIMP Utility | |
| |
| |
Calling .NET Objects form COM or Standard VB Clients | |
| |
| |
Understanding Object Lifetime and Deterministic Finalization | |
| |
| |
Moving from ASP to ASP.NET | |
| |
| |
Observations | |
| |
| |
| |
Making the Move to VB.NET | |
| |
| |
What Makes a Software Development Language | |
| |
| |
The Way It Was | |
| |
| |
The Way It Is | |
| |
| |
Syntax and Idioms | |
| |
| |
Managed Execution, Managed Code ... and Java | |
| |
| |
User Interfaces | |
| |
| |
VB.NET: The Best RAD Tool | |
| |
| |
Late Binding | |
| |
| |
VB.NET With Blocks | |
| |
| |
Market Demand | |
| |
| |
Observations | |
| |
| |
Index | |