![]() | MSc-IT Study Material January 2011 Edition Computer Science Department, University of Cape Town | MIT Notes Home | Edition Home | |
Why is the importance of abstraction?
Discussion of this question can be found at the end of this chapter.
What is the main technique for implementing information hiding?
Discussion of this question can be found at the end of this chapter.
Complete the following:
Refactoring is the activity of changing the software's [________________] without changing its [_______________]. It is specifically concerned with improving the software's [____________________].
During refactoring, software is examined for three things, namely:
[___________________]
[___________________]
[___________________]
Discussion of this question can be found at the end of this chapter.
Abstraction allows us to focus on the relevant portions of a problem and our design. It allows us to simplify our representation of how actions are carried out (procedures) and how data is represented (such as by using classes and objects).
Abstraction also allows us to represent our software at various levels of detail.
Software modules are the main tool used to implement information hiding. They segregate a portion of the information contained within a software system from the rest of the system, and control access to this information. Examples of software modules include C++ and C# namespaces, Java packages, and classes and objects.
Refactoring is the activity of changing the software's internal structure without changing its external behaviour. It is specifically concerned with improving the software's internal structure.
During refactoring, software is examined for three things, namely:
Redundant code
Unused design elements
Poorly constructed data structure