Summary
This chapter covers many helpful topics in programming that don’t fit neatly anywhere else in the book. We hope that a few of these items will be useful to you as you continue to build your programming skill.
Review Quiz
Check your understanding of the new content introduced in this chapter below - this quiz is not graded and you can retake it as many times as you want.
---
primaryColor: '#512888'
secondaryColor: '#cccccc'
textColor: black
shuffleQuestions: true
shuffleAnswers: true
locale: en
---
# Generic Types
A **generic type** is best described by which of the following statements?
1. [X] A class that accepts a parameter for the type of object it stores
1. [ ] A list that stores the generic `Object` type
1. [ ] A data type that can store both strings and numbers
1. [ ] A file format that serializes any type of data
# Generic Type Code
When a generic type is represented in code, we typically use what letter as its variable name?
1. [X] T
1. [ ] S
1. [ ] X
1. [ ] A
# Software Development Lifecycle
Place the following steps of the **Software Development Life Cycle (SDLC)** in the correct order based on the diagram in the textbook? (Click and drag to reorder elements)
1. Requirements
2. Design
3. Development
4. Testing
5. Deployment & Maintenance
# SDLC Method 1
Which of the following software development methodologies is shown in this diagram?
![Image 1](/cc410/images/20/waterfall.svg)
1. [X] Waterfall
1. [ ] Iterative & Incremental Development
1. [ ] Spiral
1. [ ] Agile
# SDLC Method 2
Which of the following software development methodologies is shown in this diagram?
![Image 2](/cc410/images/20/iter_wiki.svg)
1. [ ] Waterfall
1. [X] Iterative & Incremental Development
1. [ ] Spiral
1. [ ] Agile
# SDLC Method 3
Which of the following software development methodologies is shown in this diagram?
![Image 3](/cc410/images/20/spiral.svg)
1. [ ] Waterfall
1. [ ] Iterative & Incremental Development
1. [X] Spiral
1. [ ] Agile
# SDLC Method 3
Which of the following software development methodologies is discussed in this quote?
> … we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
1. [ ] Waterfall
1. [ ] Iterative & Incremental Development
1. [ ] Spiral
1. [X] Agile
# Defensive Programming
The art of **defensive programming** is best described by which statement?
1. [ ] Writing programs work as expected even when bad input is received
1. [ ] Writing programs that protects user data
1. [ ] Developing software using encrypted source code
1. [ ] Storing data only in secure memory