Practice Lanes and Book Reinforcement
P01–P20 in the four practice pages form the required progression. Their feedback is separate. Reuse related lab evidence instead of writing duplicate reports. Lesson drills provide targeted repair or optional depth.
| Gap | Selective assignment | Return with |
|---|---|---|
| Unsure what a refactor preserves | Refactoring, Defining Refactoring and The Two Hats | Observations and intentional changes separated |
| Smell automatically determines a fix | Refactoring, code smells | Hypothesis, counterexample and competing design |
| One-provider interface automatically removed | Good Code, Bad Code, Interfaces | Present benefit and carrying-cost decision |
| Inheritance judged by names | Good Code, Bad Code, inheritance risks | Parent contract and violating client |
| Lost guarantees across a boundary | Good Code, Bad Code, code contracts | Input/error/state/ownership contract |
Locate these through the reading guide and the Refactoring book index. No invented exercise numbers, forced renames or minimum comment-deletion counts are required. More reading volume is not evidence of design judgment.