1 14 17
2
3
4 18
5
6
7/12
15
13 16 8
9
10
11

Crossword: Decomposition & Abstraction

Across

1. Starting with a high-level overview and breaking the problem down into more detailed sub-tasks

2. A data type that specifies only the functionality and not the specific way it is implemented.

3. Dividing a program into separate modules or parts, each of which is responsible for a specific piece of functionality.

4. A simplified interface is provided to hide the complexity of lower-level components.

5. A technique that conceals the inner workings of a procedure and reveals only the essential information.

6. The ease with which modifications can be made to a codebase.

7. The ability to execute tasks with optimal resource usage.

8. Simplifying complex concepts or systems by focusing on essential features while ignoring unnecessary details.

9. A subprogram that is callable within a program and executes a specific task, but does not return a value.

10. A command in a program that activates a subprogram allowing it to run and perform its tasks.

11. Breaking a system into smaller, loosely-coupled components that can be independently developed and maintained.

Down

12. The bundling of data and methods that operate on that data within a single unit.

13. A modular, reusable, and self-contained part of a larger system.

14. The ability to present the same interface for different underlying data types.

15. The arrangement of elements or components into a structure that mirrors their relative significance or connections.

16. A subroutine that executes specific tasks within a program and provides a returned value when called.

17. The technique of simplifying intricate data by offering a high-level interface.

18. starting with small details and gradually building up to a complete understanding.


🖶

Shortcuts

Left: ⇤ Right: ⇥ Up: ↑ Down: ↓