ch16 - Chapter 16: Topics in Computer Science:...

Info iconThis preview shows pages 1–13. Sign up to view the full content.

View Full Document Right Arrow Icon
Chapter 16: Topics in Computer Science: Object-Oriented Programming 1
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2
Background image of page 2
History of Objects: Where they came from Start of the Story: Late 60's and Early 70's Windows are made of glass, mice are undesirable rodents Good programming = Procedural Abstraction Verb-oriented 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Procedural Abstractions Define tasks to be performed Break tasks into smaller and smaller pieces Until you reach an implementable size Define the data to be manipulated Design how functions interact What's the input What's the output Group functions into components (“modules" or "classes") Write the code 4
Background image of page 4
Object-oriented programming First goal: Model the objects of the world Noun-oriented Focus on the domain of the program Phases Object-oriented analysis: Understand the domain Define an object-based model of it Object-oriented design: Define an implementation Design the solution Object-oriented programming: Build it 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
How’d we get from there to here? Key ideas Master-drawings in Sketchpad Simulation “objects” in Simula Alan Kay and a desire to make software better More robust, more maintainable, more scalable 6
Background image of page 6
Birth of Objects, 1 of 2 Ivan Sutherland's Sketchpad, 1963 7
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Sketchpad First object-oriented drawing program Master and instance drawings Draw a house Make an instance Add a chimney to the master Poof! The instance grows a chimney Other interesting features 1/3 Mile Square Canvas Invention of “rubber band” lines Simple animations 8
Background image of page 8
Birth of Objects, 2 of 2 Simula Simulation programming language from Norway, 1966 Define an activity which can be instantiated as processes Each process has it own data and behavior In real world, objects don't mess with each others' internals directly (Simulated) Multi-processing No Universal Scheduler in the Real World 9
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Alan Kay U. Utah PhD student in 1966 Read Sketchpad, Ported Simula Saw “objects” as the future of computer science His dissertation: Flex, an object-oriented personal computer A personal computer was a radical idea then 10
Background image of page 10
"A Personal Computer for Children of All Ages" Flex, an object-oriented personal computer Enabled by Moore's Law Imagining personal computing in 1969 Computer as meta- medium The first medium to encompass other media A 1970’s depiction of students using an object-oriented system based on Flex 11
Background image of page 11

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Kay’s Insights “Computer” as collection of Networked Computers All software is simulating the real world Biology as model for objects Bacterium has 120M of info, 1/500th of a Cell, and we have 1013 of these in us. Talk about processing power! Talk about managing complexity!
Background image of page 12
Image of page 13
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/22/2012 for the course CS 177 taught by Professor Staff during the Fall '08 term at Purdue.

Page1 / 67

ch16 - Chapter 16: Topics in Computer Science:...

This preview shows document pages 1 - 13. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online