2.3.1 Flashcards
defensive design
“The practice of planning for contingencies in the design stage of a project.”
anticipating misuse
Considering how an end user might accidentally or deliberately break a program and writing additional code to handle these situations.
Authentication
“Verifying a user’s identity before they can use a system. Strong passwords over a certain length with symbols and mixed-case letters are advised.”
Input validation
“Ensuring data input by a user meets specific criteria before processing. Range check (e.g., 1 – 31); type check (e.g., a number, not a symbol); presence check (e.g., data has been input); format check (e.g., a postcode is written LLN(N) NLL). ”
Maintainability
“Techniques and methods that make code easier to debug, update and maintain.”
Naming conventions
“Many programmers use defined naming conventions for variables, contents and procedures. Camel case is a popular one used in the industry where the first word of an identifier uses all lower case and all subsequent words start with a capital letter – e.g., studentsFirstName.”
indentation
“Makes it easier to see where structures begin and end. Conditions, iterations and code inside procedures and functions should be indented.”
Commenting
“Used to explains sections of code. Ignored by the compiler.”