The precursors of object-oriented programming can be traced back to the late 1960's: Classes, inheritance
and virtual member functions were integral features of Simula67, a programming language that was
mainly used for writing event-driven simulations. When Smalltalk first appeared back in 1972, it offered
a pure object-oriented programming environment. In fact, Smalltalk defined object-oriented
programming. This style of programming was so innovative and revolutionary at the time that it took
more than a decade for it to become a standard in the software industry.
"Refactoring" was conceived in Smalltalk circles, but it wasn't long before it found its way into
other programming language camps. Because refactoring is integral to framework development,
the term comes up quickly when "frameworkers" talk about their craft. It comes up when they
refine their class hierarchies and when they rave about how many lines of code they were able to
delete. Frameworkers know that a framework won't be right the first time around—it must evolve
as they gain experience.
Object-Oriented Programming (OOP)
Inheritance - form of software reusability
New classes created from existing ones
Absorb attributes and behaviors, and add in their own
Override methods - redefine inherited methods
Subclass inherits from superclass
Direct superclass - subclass explicitly inherits
Indirect superclass - subclass inherits from two or more levels up the class hierarchy
Write programs in a general fashion to handle a wide variety of classes
Abstraction - seeing the big picture...
I am an admitted object-oriented fanatic. I have been designing and implementing object-oriented
software for more than twenty years. When I started designing and implementing object-oriented
, I encountered many detractors. They would say things like “The object model isn’t
complete,” “You can’t have public variables,” “The development environment doesn’t work well
with objects,” “Objects and vector operations don’t mix,” “Object-oriented code is too hard to
debug,” and “MATLAB objects are too slow.
The World Wide Web, for much of its existence, has been a method for distributing passive
information to a widely distributed number of people. The Web has, indeed, been exceptionally
good for that purpose. With the addition of forms and image maps, Web pages began to become
interactive—but the interaction was often simply a new way to get at the same information. The
limitations of Web distribution were all too apparent once designers began to try to stretch the
boundaries of what the Web can do.
Chapter 2 - Review of object orientation. In this chapter you will learn about the following: The basic principles of object orientation; classes and objects; instance variables, attributes and associations; methods, operations and polymorphism; organizing classes into inheritance hierarchies; evaluating alternative implementations of simple designs in Java.
Beginning Object-Oriented Programming with VB 2005 is a comprehensive resource of correct coding procedures. Author Daniel Clark takes you through all the stages of a programming project, including analysis, modeling, and development, all using object-oriented programming techniques and Visual Basic .NET.
Clark explores the structure of classes and their hierarchies, as well as inheritance and interfaces. He also introduces the .NET Framework and the Visual Studio integrated development environment, or IDE. A real-world case study walks you through the design of a solution.