Visual Basic has its own style for doing object-oriented programming, just as
it has its own style for doing most everything else. Let’s look briefly at how
Visual Basic both resembles and differs from other object-oriented languages.
Purists will no doubt argue that Visual Basic isn’t an object-oriented language at all because it doesn’t fully support the three pillars of object-oriented languages—encapsulation, reusability, and polymorphism. (Most books describe the second pillar as inheritance rather than reusability, but bear with me.) In the first edition of this book, I just eyeballed the language and said it supported one and a half out of three pillars of object-oriented programming. In retrospect, this was an extremely generous rating. If I rated version 4 according to the rigorous scientific test I’m about to apply to version 5, it would come out at about 1.2 (.6 for encapsulation, .2 for reusability, and .4 for polymorphism).
So here’s a complete scoresheet supporting my current rating of 1.9 (with an error factor of .2) for Visual Basic version 5 as an object-oriented language.
WARNING One of the early reviewers of this manuscript accused me of arrogance for claiming the ability to scientifically rate a language with an error factor of .2. Well, for those with a sense of humor slightly different than mine, let me point out the bulge in the side of my face (tongue in cheek). The reviewer in question, whose opinions I value, used a method at least as scientific as mine to give Visual Basic an OOP rating of 2.95. I considered his rating ridiculous. He considered mine ridiculous. But you, dear reader, have the only scientific rating system that matters.