2.3
Producing robust programs
2 subtopics
This topic is about making a program hard to break. Defensive design covers anticipating misuse, authentication, input validation, and writing maintainable code with sensible naming, indentation and comments.
Testing covers the purpose of testing, the difference between iterative and final testing, and the types of error you are looking for: syntax and logic. You also need to choose suitable test data, including normal, boundary and invalid or erroneous values.
Questions often give you a program and ask what could go wrong with it, so get used to reading code with an eye for the input nobody expected.
Revise with flashcards
All of Producing robust programs in one deck, for active recall.