 |
|
|
|
|
Documenting the Direction of Data Flow |
|
|
|
| |
 |
|
|
|
|
Matters of Style: Formatting Function Headings |
|
|
|
| |
 |
|
|
|
|
Software Engineering Tip: Conceptual Versus Physical Hiding of a Function Implementation |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Comparison of Furniture-Store Sales |
|
|
|
| |
 |
|
|
|
|
Testing and Debugging |
|
|
|
| |
 |
|
|
|
|
The assert Library Function |
|
|
|
| |
 |
|
|
|
|
Testing and Debugging Hints |
|
|
|
| |
 |
|
|
|
|
Summary |
|
|
|
| |
 |
|
|
|
|
Quick Check |
|
|
|
| |
 |
|
|
|
|
Exam Preparation Exercises |
|
|
|
| |
 |
|
|
|
|
Programming Warm-Up Exercises |
|
|
|
| |
 |
|
|
|
|
Programming Problems |
|
|
|
| |
 |
|
|
|
|
Case Study Follow-Up |
|
|
|
| |
|
|
|
|
|
8
Scope, Lifetime, and More on Functions |
|
|
|
| |
 |
|
|
|
|
Scope and Lifetime |
|
|
|
| |
 |
|
|
|
|
Scope of Identifiers |
|
|
|
| |
 |
|
|
|
|
Scope Rules |
|
|
|
| |
 |
|
|
|
|
Variable Declarations and Definitions |
|
|
|
| |
 |
|
|
|
|
Lifetime of a Variable |
|
|
|
| |
 |
|
|
|
|
Initializations in Declarations |
|
|
|
| |
 |
|
|
|
|
Interface Design |
|
|
|
| |
 |
|
|
|
|
Side Effects |
|
|
|
| |
 |
|
|
|
|
Global Constants |
|
|
|
| |
 |
|
|
|
|
Value-Returning Functions |
|
|
|
| |
 |
|
|
|
|
May We Introduce: Ada Lovelace |
|
|
|
| |
 |
|
|
|
|
Boolean Functions |
|
|
|
| |
 |
|
|
|
|
Matters of Style: Naming Value-Returning Functions |
|
|
|
| |
 |
|
|
|
|
Interface Design and Side Effects |
|
|
|
| |
 |
|
|
|
|
Background Information: Ignoring a Function Value |
|
|
|
| |
 |
|
|
|
|
When to Use Value-Returning Functions |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Reformat Names |
|
|
|
| |
 |
|
|
|
|
Software Engineering Tip: Control Abstraction, Functional Cohesion, and Communication Complexity |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Comparison of Furniture-Store Sales, Part 2 |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Starship Weight and Balance |
|
|
|
| |