slideset3 - Engineering Computation Term 2 Summer 2011...

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

View Full Document Right Arrow Icon

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

View Full Document Right Arrow Icon

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

View Full Document Right Arrow Icon

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

View Full Document Right Arrow Icon

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

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Engineering Computation Term 2, Summer 2011 Important Notice: This document does NOT contain full record of lecture material. In the classroom, these slides are accompanied by writings and drawings on the board, as well as verbal explanations. If you miss a class, it is your responsibility to consult with a colleague who attended the class to obtain as much information as possible about the presented material. A Bokhari, Eng 1D04, Summer 2011 1 Material tested in the midterm and the final may include any material presented in class, regardless of whether it appears in these slides or not. A Bokhari, Eng 1D04, Summer 2011 2 Object Oriented Concepts Python is an Object Oriented Language but so far we have not used its object oriented features What is an Object? What does Object Oriented mean? Real world problems are complex Solving these complex problems by machine means representing them in a form, which can be understood by the machine. It makes the problems more complex Procedural languages are not able to handle very complex problems A Bokhari, Eng 1D04, Summer 2011 3 The project usually consists of hundreds of variables and it is possible to loose track of some of them A famous psychologist, Miller, analyzed the problem and found that the maximum number of chunks of information that an individual can simultaneously comprehend is of the order of 7 + - 2 pieces of information. This channel capacity seems to be related to the capacity of our short- term memory In spite of these limitations human A Bokhari, Eng 1D04, Summer 2011 4 beings are able to solve very complex problems How do we handle complex problems? What is the secret? We (humans) have developed an exceptionally powerful technique for dealing with complexity. We abstract from it. What is abstraction? Unable to master the entirety of a complex object we choose to ignore its inessential details dealing instead with a generalized idealized model of the object [Wulf] A Bokhari, Eng 1D04, Summer 2011 5 Example: An object is a self-contained unit. It hides non-essential details from the user. The user needs to know what the object can do in response to a message sent to it. He/She is not concerned with the implementation details Abstraction: A simplified description or simplification of a system that emphasizes some of the systems details or properties while suppressing others A good abstraction is one that emphasizes details that are at least A Bokhari, Eng 1D04, Summer 2011 6 for the moment, significant to the user and suppresses those which are immaterial How to achieve abstraction? Encapsulation is the process of implementing abstraction We must decide which details are essentials and which are not Encapsulation is often achieved by information hiding Let us review: Humans can handle complex problems because they deal with objects....
View Full Document

{[ snackBarMessage ]}

Page1 / 55

slideset3 - Engineering Computation Term 2 Summer 2011...

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

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