This article is part of an ongoing discussion about using Microsoft's Active Server Pages to develop web-based applications. This installment focuses on using objects or, more specifically, using object-based technologies within the context of Active Server Pages to create extensible web application frameworks based on reusable component software. Everything is an object. Although I often doubt the validity of this statement, it has echoed inside my head ever since I wrote my first SmallTalk program back in the 1980's.
Experiences do vary, however.
Early in my career, myself, along with droves of other object followers, often built some of the most beautiful hierarchies of classes, attempting to squeeze every reusable byte out of every object ever instanced. Sometimes we found that even the most perfect set of classes yielded in code what the most perfect mixing of genetics often yields in real life - a weaker offspring. There were obviously many things that contributed to the effectiveness and unfortunately, the ineffectiveness of early object-oriented programming techniques. By the time you derived a new class of object from an existing base class, you had probably involved hundreds, if not thousands of lines of code. A minor change to a base class sometimes caused a cascading set of complexities, also known as bugs, in all its derived classes.