180 likes | 314 Views
New Mexico Computer Science For All. Abstraction in Life and Computer Science Maureen Psaila-Dombrowski. What is Abstraction?. Abstraction Ignoring some details or parts so that you can focus on what is important to you at that time.
E N D
New Mexico Computer Science For All Abstraction in Life and Computer Science Maureen Psaila-Dombrowski
What is Abstraction? • Abstraction • Ignoring some details or parts so that you can focus on what is important to you at that time. • As your interests change the amount of abstraction you need can change too. • Levels of Abstraction • These are the levels or layers in your abstraction. • The layer in your abstraction includes things that can be grouped together in the same way.
Some Types of Abstraction • Physical Abstraction • Levels - physical parts of an object. • Modeling Abstraction • Levels - what you want to include in a model. • Control Abstraction • Levels - how something is controlled • Data Abstraction • Levels - some characteristic of the data and how you want to use it.
What? • No Way! I never do that….. Yes you do… you are doing it right now! • Everyone uses abstraction – otherwise …. • Your brain automatically filters or abstracts • Sights • Sounds • Your mind automatically changes levels of abstraction • Driving, walking • Looking for a friend in a crowd
Applying Abstraction in Everyday Life • Abstraction • Simplification to what’s important. • Focus on the important part • Ignore the other parts until later, if at all • Powerful! • Don’t waste time and energy • Make’s things manageable, doable • Then use decomposition to figure out the steps
Applying Abstraction in Everyday Life: Go to a Amusement Park
Applying Abstraction: CAR Driver Mechanic Car Parts Designer Automotive Engineer Mechanical Engineer Physicist Materials Engineer
CAR Brake Accelerator Applying Abstraction: Modeling Driving a Car
CAR Accelerator Brake Applying Abstraction: Modeling Driving a Car Wipers Mirrors Indicator Gas Guage
One Last Abstraction: After learning about what is inside a computer, You realize that a computer can be abstracted as follows
One Last Abstraction: Average Person Computer Programmer System Designer Hardware Engineer
One Last Abstraction: YOU Before this Class Average Person Computer Programmer Operating System Designer
One Last Abstraction: YOU Before this Class Average Person YOU After this Class Computer Programmer Operating System Designer
Summary • Abstraction - simplification, focus only on the important parts • Levels of Abstraction - each level includes things that can be grouped together. • You already use abstraction all the time • You can apply abstraction to different things and for different reasons • Objects • Models