Learning objectives
Explain abstraction as leaving out the details that do not matter for the task in hand, and distinguish data abstraction, which names data without revealing how it is stored, from procedural abstraction, which names a process
Identify the attributes a class needs and classify each as an instance variable, with a separate value in every object, or a class variable, shared by all objects of the class
Apply method decomposition to split a large behavior into smaller methods, and explain how moving shared steps into one general method removes duplicated code
Explain how parameters let one method serve a range of arguments, and why the body of a method can be rewritten without affecting its callers as long as its signature and its behavior are unchanged
Design a class for a written specification, recording its attributes and behaviors in plain language or in a class diagram before any code is written
Continue with a revision plan
These learning objectives are available to everyone. Sign in with an eligible plan to read the full note and worked examples.
