Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Discussion 4 - Nicholas Beckmann
From Midterm Review - Spring 2003
What is important to know from Chapter 1? You should know enough about the history of OO to discuss it intelligently and to show your understanding of two major threads.
1. How did we get to OO? If you see a newsgroup post claiming OO concepts were developed in the nineties and are a fad, how would you respond? Are they a fad or is there more to OO than just a hyphenated buzz-word?
2. People often talk about verb-oriented versus noun-oriented thinking when they contrast the functional languages like C, COBOL or FORTRAN and OO langauges like Java and Smalltalk. What is the significance of the verb/noun comparison?
We got to OO by an evolution of ideas starting with Sketchpad in 1963. Ivan Sutherland came up with a drawing program where one could make an original drawing and duplicate it many times in a bigger picture. By changing the original all other instances of the drawing could change. This was the first glimpse of using objects in programming. Around the same time in Norway a similar idea was being developed in the form of Simula, a programming language used to simulate real world situations. In simula you could make many instances of one activity or process, this process would function "at the same time" as other activities in a system. Although each process would start in a similar manner, they had their own data and could only be modified through their function calls(encapsulation). Recognizing the possibilities brought on by both of these languages Allen Kay began to develop FLEX an object oriented programming language that he hoped would lead to a personal computer that could be used by even children. While working at apple Allen Kay, Dan Ingalls(Smalltalk guru), and Ted Kahler developed squeek, a cross platform object oriented programming language.
OO was clearly not developed in the 90's with its popularity booming after 30 years of development one can hardly say its a fad. Especially with the rise in importance of user interfaces, which can efficiently and easily be constructed using OOP, OO is more than just "a hyphenated buzz-word."
2. Verb oriented programming is centered around what actions need to be done, such orientation maps best to a functional language where events happen in a certain sequence. Noun oriented programming centers around what objects are in a system and how objects interact with eachother. This is closely related to OOP where events are triggered by messages from one object to another.
Links to this Page