Talk:Visual Basic/Object Oriented Programming

The discussion of user defined types should come before that of using classes and objects, as they are conceptually and programmatically much simpler to use.

There should primarily be discussion of the 'dot' notation, perhaps even before anything else, as the notation is used without explanation in previous pages. In fact the dot notation can be used to identify both UDTs and Objects in VB.

It should also be shown what Object type variables actually are: that is, pointers to memory. This will help explain how Objects are passed by reference (or by value) to functions and what happens when you assign one object to another.

Examples of some common VB objects you might use in a program (such as the Debug object or Controls on a Form or Collections), should be given.

How to write a class from scratch should then be discussed; and how these objects can be instantiated and how object lifetimes (reference counting) works in practice. This will include such areas as the prefered use of the New keyword and what happens when Object variables go out of scope and with circular references.

Lastly the use of visibility of functions (methods) and variables or properties (properties), and the difference between Private, Public and Friend keywords.

Some advanced topics (maybe for other sections) should include authoring DLLs, COM objects (and GUIDs), default methods (and the use of the 'bang' ! operator) and enumerators (for use in For Each loops).

I shall write some of this perhaps, when I have some time...

First Person
This section over-uses the first-person perspective, which goes against Wiki standards and makes it awkward to edit.