Section 0.10 Exercises
Exercises 0.10.1 Matching Vocabulary
1. Matching Problem for Object-Oriented Programming Principles.
2. Matching Problem for Devices and Other Vocabulary.
Subsection 0.10.2 Thinking Exercises
Explain the difference between each of the following pairs of concepts.
hardware and software
systems and application software
compiler and interpreter
machine language and high-level language
general-purpose and special-purpose computer
primary and secondary memory
the CPU and the ALU
the Internet and the WWW
a client and a server HTTP and HTML source and object code
Identify the component of computer hardware that is responsible for the following functions.
executing the fetch-execute cycle
storing programs while they are executing
storing programs and data when the computer is off
Explain why a typical piece of software, such as a word processor, cannot run on both a Macintosh and a Windows machine.
What advantages do you see in platform independence? What are the disadvantages?
In what sense is a person's name an abstraction? In what sense is any word of the English language an abstraction?
Analyze the process of writing a research paper in terms of the divide-and-conquer and encapsulation principles.
Analyze your car by using object-oriented design principles. In other words, pick one of your car's systems, such as the braking system, and analyze it in terms of the divide-and-conquer, encapsulation, information-hiding, and interface principles.
Make an object oriented analysis of the interaction between, a student, librarian, and a library database when a student checks a book out of a college library.