This series explains the basic concepts of Object Oriented programming and explains how Visual Basic.NET syntax required to implement OO concepts.
-
Understanding Classes and Objects
This lengthy video explains the parts of a class, which is the basic building block used in every VB.NET application. Classes have properties and methods, contructors and destructors, and methods can be overloaded. This video starts you out at the very basics of all these concepts, which are more thoroughly explained in future videos in this series. Also, I build a small application that uses a class and step through the code to demonstrate the order of events when creating an instance of an object for your applications.
-
Creating Methods
This video goes into more depth about methods, such as what private and public means, overloading methods, and returning values or creating void methods that return nothing.
-
Understanding Overloaded Methods
This video demonstrates the use of overloaded methods with a small application. The code is stepped through and thoroughly explained.
-
Constructors and Destructors
Constructors are the rough equivilent of the Initialize event in VB6 classes, but with the added ability to be overloaded. The is no true equivilent to the Terminate event in VB6 classes, which is deterministic ... in other words, in VB6 you know exactly when the object was being unloaded from memory. However, due to garbage collection in VB.NET, finalization in in-deterministic ... you don't REALLY know when an object is being unloaded from memory, therefore you must adopt new practices for object "clean-up". This video discusses constructors and the finalize method in classes, as well as a common convention to be used before setting a object reference to nothing.
-
Creating and Referencing Assemblies
This video demonstrates how to create a class library, which is an assembly compiled into a DLL that can be referenced from other projects. It is the rough equivilent to creating a COM+ component in VB6. Obviously, there is a significant difference in COM+ and .NET, but the idea for our purposes here is that you can have a component that contains classes for use in other projects. This video demonstrates how to create such a class library, then use it from a consuming application. Explains the Add Reference dialog.
-
Understanding Namespaces
Namespaces allow you to remove ambiguity between components that may have the same classes and same file name. This video shows how to set the root namespace, as well as how to create sub-level namespaces. Additionally, it shows what happens when you use the Imports keyword, and most importantly what happens when there is a naming conflict.
-
Inheritance Basics
Inheritance was available in VB6 in a limited form (i.e., interface inheritance), but is more fully realized in VB.NET (i.e., implementation or "code" inheritance). This video shows the basics of how inheritance works, and sets the stage for many future videos on this vital topic.
-
Inheritance Basics
Inheritance Basics
-
Polymorphism Basics
Polymorphism Basics
-
Favor Composition Over Inheritance
Favor Composition Over Inheritance
-
Find What Varies and Encapsulate It
Find What Varies and Encapsulate It
-
Strategy Design Pattern
Strategy Design Pattern
-
Interface Basics
Interface Basics
-
Program to Interfaces and not to Implementations
Program to Interfaces and not to Implementations
-
Abstract Factory Design Pattern
Abstract Factory Design Pattern
-
More About Scoping and Interfaces
More About Scoping and Interfaces
-
GRASP: High Cohesion
GRASP: High Cohesion
-
GRASP: Low Coupling
GRASP: Low Coupling
-
GRASP: Controller
GRASP: Controller
-
GRASP: Expert
GRASP: Expert
-
GRASP: Creator
GRASP: Creator
-
GRASP: Pure Fabrication
GRASP: Pure Fabrication
-
GRASP: Indirection
GRASP: Indirection
-
GRASP: Dont Talk to Strangers
GRASP: Dont Talk to Strangers
-
Model-View Seperation Pattern
Model-View Seperation Pattern
-
GoF Creation Patterns: Singleton
GoF Creation Patterns: Singleton
-
GoF Creation Patterns: Builder
GoF Creation Patterns: Builder
-
GoF Creation Patterns: Prototype
GoF Creation Patterns: Prototype
-
GoF Structural Patterns: Adapter
GoF Structural Patterns: Adapter
-
GoF Structural Patterns: Bridge
GoF Structural Patterns: Bridge
-
GoF Structural Patterns: Composite
GoF Structural Patterns: Composite
-
GoF Structural Patterns: Decorator
GoF Structural Patterns: Decorator
-
GoF Structural Patterns: Facade
GoF Structural Patterns: Facade
-
GoF Structural Patterns: Flyweight
GoF Structural Patterns: Flyweight
-
GoF Behavioral Patterns: Chain of Responsibility
GoF Behavioral Patterns: Chain of Responsibility
-
GoF Structural Patterns: Proxy
GoF Structural Patterns: Proxy
-
GoF Behavioral Patterns: Command
GoF Behavioral Patterns: Command
-
GoF Behavioral Patterns: Interpreter
GoF Behavioral Patterns: Interpreter
-
GoF Behavioral Patterns: Iterator
GoF Behavioral Patterns: Iterator
-
VB.NET Delegate Basics
Delegates are object oriented function pointers allowing you to handle callbacks and events.
-
XML Object Serialization
Demonstrates how to serialize objects to an XML file, then how to deserialize the XML back to a new instance of an object.