Object-oriented programming, which focuses on objects and data rather than actions and logic, is a major element of Visual Basic .NET development. OOP, as it is abbreviated, is only used sparingly in VB 6, so if you're about to make the move to VB.NET, now's the time to get acquainted with it. This learning guide offers article, tips, book excerpts and tutorials that focus on general object-oriented programming best practices and on the four main characteristics of OOP -- abstraction, encapsulation, polymorphism and inheritance.
If you'd like to submit additional resources for this series or suggest other topics for new learning guides, please send us an email and let us know.
TABLE OF CONTENTS ![]() |
| OOP Quick Start |
- Definition: Object-oriented programming
- (SearchWebServices.com)
- Definition: Abstraction
- (SearchSMB.com)
- Definition: Encapsulation
- (SearchNetworking.com)
- Definition: Polymorphism
- (SearchSMB.com)
- Definition: Inheritance
- (SearchSMB.com)
- Book Excerpt: Object-Oriented Programming -- Ch. 4 of Visual Basic 2005: The Complete Reference
- (SearchVB.com)
- Tutorial: Object Oriented Programming VB .NET -- Level 000
- (Eric Wise)
| General OOP Resources |
- Commentary: Is VB.NET really object-oriented at all?
- (TheServerSide.NET)
- Book Excerpt: New Object-Oriented Capabilities in VB.NET
- (DeveloperFusion, courtesy of Wrox
Press)
- Book Excerpt: VB.NET's Object Oriented Features
- (Sams Publishing)
- Book Excerpt: Inheritance and Polymorphism in VB.NET
- (InformIT, courtesy of Sams
Publishing)
- Download: Object-Oriented Programming with Visual Basic .NET
- (Microsoft)
- Tutorial: Design Patterns in VB.NET
- (ASP Alliance)
- Tutorial: OOPS Concepts and .NET: Inheritance, Abstraction, & Polymorphism
- (C# Corner)
- Tutorial: Object Oriented Programming in VB.NET
- (The Code Project)
- Tutorial: Object Oriented Design Principles in Visual Basic
Part 1 | Part 2 | Part 3 | Part 4 | (Stardeveloper.com courtesy of Wrox Press)
- Tutorial: Object-Oriented ASP.NET
- (Developer Fusion)
- Webcast: Object-Oriented Programming Fundamentals in VB 2005
Part 1 | Part 2 | (Microsoft)
| VB.NET for Developers |
- 1. Abstraction in Visual Basic .NET
- 2. Encapsulation in Visual Basic.NET
- 3. Polymorphism in Visual Basic .NET
- 4. Inheritance in Visual Basic .NET
- 5. Interface-Based Programming
- 6. Summary
| The Book of Visual Studio.NET |
- 1. Abstraction and Encapsulation
- 2. Polymorphism, Inheritance and Properties
- 3. Methods and Declaration Options
- 4. Object Instantiation and Early and Late Binding
- 5. Components and Adding Abstraction
- 6. Adding Encapsulation
- 7. Adding Polymorphism or Interface-Based Inheritance
| Abstraction |
- Book Excerpt: Abstract classes and methods
- (Addison-Wesley Professional)
- Article: Using Abstract Classes in VB.NET
- (DevX)
- Article: Abstract Factory Design Pattern
- (CodeGuru)
- Article: Abstract Factory Design Pattern Implementation in C# and VB.NET
- (DevCity.NET)
- Code sample: Define Abstract Class and Reference Class by It
- (Demo Source and Support)
- Code sample: Abstract (MustInherit) Class
- (Demo Source and Support)
- Code sample: Abstract Method / Interface Implementation Macro
- (Code Project)
- Tip: Creating and implementing abstract classes in VB.NET
- (startvbdotnet.com)
- Tutorial: Understanding Properties in VB.NET: Abstract Classes and Methods
- (VB.NET Heaven)
- Forum post: Abstract classes and Interfaces
- (DotNetSpider)
- Forum post: Abstract Class & Inheritance
- (ASP.NET Forum -- Architecture)
| Encapsulation |
- Article: Encapsulation or Representation?
- (David Bau)
- Article: Understanding Access Modifiers in VB 2005
- (CodeGuru)
- Commentary: On Encapsulation: A Method for Understanding OOP in the Real World
- (Jeremy Bowers)
- Forum post: Does XML serialization breaks OO encapsulation?
- (MSDN Forum -- XML and the .NET
Framework)
- Survey: A Survey of the Usage of Encapsulation in Object-Oriented Programming
- (Mats Skoglund)
- Survey: Practical use of Encapsulation in Object-Oriented Programming
- (Mats Skoglund)
- Tip: Encapsulation in the Databases World
- (DevCity.NET)
- Tip: Use "static" for better encapsulation
- (DeveloperLand.NET)
- Tip: Avoid encapsulation violation
- (Dave Astels)
| Polymorphism |
- Spec: Visual Basic Language Specification: Polymorphism
- (Microsoft)
- Commentary: Polymorphism can lead to head scratching in VB.NET
- (SearchVB.com)
- Commentary: Polymorphism is a must in VB.NET
- (SearchVB.com)
- Commentary: The polymorphism debate, Part 1
- (SearchVB.com)
- Commentary: The polymorphism debate, Part 2
- (SearchVB.com)
- Commentary: The polymorphism debate, Part 3
- (SearchVB.com)
- Commentary: MyClass -- Implementing Polymorphism in VB.NET
- (Dev Articles)
- Tip: VB.NET Language Enhancements: Polymorphism
- (DevX)
- Tip: Visual Basic Language Concepts: How VB Provides Polymorphism
- (Microsoft)
- Tip: VB Language Concepts: Inheritance-Based Polymorphism
- (Microsoft)
- Tip: VB Language Concepts: Interface-Based Polymorphism
- (Microsoft)
- Tutorial: Polymorphism in VB.NET
- (James Crowley, DeveloperFusion)
| Inheritance |
- Spec: Visual Basic Language Specification -- Inheritance
- (Microsoft)
- Book Excerpt: Inheritance and VB.NET
- (Sams Publishing)
- Book Excerpt: Inheritance
- (vbip.com, courtesy of Wrox
Press)
- Book Excerpt: Inheritance in VB.NET
- (Addison-Wesley Professional)
- Book Excerpt: Doing Objects in VB.NET and C# -- Inheritance
- (Terry Smith)
- Article: How to use inheritance in Visual Basic 2005 or in Visual Basic .NET
- (Microsoft)
- Article: VB.NET Class Design -- Inheritance
- (Steve Sartain)
- Article: Everything you wanted to know about Forms Inheritance in VB.NET
- (Code Project)
- Article: Use Visual Inheritance to Create Consistent Windows Forms in VB.NET and C#
- (DevCity.NET)
- Article: VB.NET visual inheritance
- (Builder.com)
- Article: ASP.NET Page Templates -- Using Inheritance
- (Code Project)
- Article: Visual Basic.NET Language Enhancements: Inheritance
- (DevX)
- Expert response: Can you use multiple inheritance with VB.NET?
- (Builder.com)
- Tip: Solving The Multiple Inheritance Issue Under .NET Platform
- (DevWebPro)
- Tutorial: Inheritance with VB.NET 2005 (Developer Shed)
Part 1: Inheritance with VB.NET 2005
Part 2: Basic inheritance
Part 3: Adding your own members to the sub class during inheritance
Part 4: Multi-level inheritance in Visual Basic 2005
Part 5: Dealing with constructors during inheritance
Part 6: Dealing with constructors with parameters during inheritance
| Newsgroups and Forums |
- Where peers share know-how and experience: ITKnowledge Exchange
- (SearchVB.com)
- Object Oriented Design
- (VBCity.com)
- Object Oriented Analysis and Design
- (Tek-Tips Forums)
- Data Layer / Abstraction
- (VB.NET Forums)
- COM and ActiveX
- (VBForums)
- Visual Basic: Language
- (MSDN Forums)
- Visual Basic: General
- (MSDN Forums)
- Visual Basic .NET
- (ASP.NET Forums)
- Beginning VB.NET 2002/2003
- (Wrox Press)
- Pro VB.NET 2002/2003
- (Wrox Press)
- Beginning VB.NET 2005
- (Wrox Press)
- Pro VB.NET 2005
- (Wrox Press)
- Visual Basic .NET/2005
- (A1 VBCode)
This was first published in October 2006
TABLE OF CONTENTS