CSC/ECE 517 Fall 2012/ch2a 2w15 rr
Introduction
Object-oriented design is a programming model that began in the late 60's as software programs became more complex. The idea behind the approach was to build software systems by modeling them based on the real-world objects that they were trying to represent. For example, banking systems would likely contain customer objects, account objects, etc. Today, object-oriented design has been widely adopted <ref>Brian C. Smith, "Reflection and semantics in a procedural language", Technical Report MIT-LCS-TR-272, Massachusetts Institute of Technology, Cambridge, Mass., January 1982</ref>. When done properly, the approach leads to simpler, concrete, robust, flexible and modular software. When something goes wrong, the results could be bad. Object oriented design can be seen from a number of different perspectives.