Object Orientated Programming
There are several weaknesses with traditional structured programming where data
is stored separately from procedural code. Any code that is written as structured
code is not modular. Because data elements are accessible from any code, it
is possible for data to be modified without the developer's knowledge. This
can result in runtime errors that are very difficult to debug. Additionally,
maintenance becomes very tricky. Trying to understand the global impact of changing
a line of code with structured programming can be very difficult. Finally, this
reliance on having the programmer manage both code and data results in much
lower rates of reuse.
Object oriented Programming (OOP) solves these problems. It packages data,
and the methods that act on that data, into a single unit called an object.
An object's data can be hidden to prevent unauthorized modification. The object
surfaces a set of public methods to operate on this data. This concept is called
encapsulation. Because implementation details are separated from the interface,
the underlying programming logic can be changed at a later date without fear
of breaking code that calls the object.
OOP allows developers to reuse code and data together through inheritance.
By inheriting from predefined objects, developers can more rapidly construct
complex applications. Since writing new code always has the potential for incorporating
bugs, reusing tested code minimizes the chances of additional bugs.
In order to address these needs, the next generation of Visual Basic will provide
additional language features that will make it a first class Object Oriented
Programming language with all the benefits described above.