Design Best Practices Flashcards

1
Q

What does CRUD stand for?

A

Create, read(+search), update, delete for each

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Name a few common data structures:

A
Arrays
linked list
stack
queue
tree
hash table
graph
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Name a few common algorithms:

A
Iteration
Sorting
binary search
linear search
tree traveras
shortest path
spanning tree
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Name a few common I/O:

A

Read/write file contents
parse/tokenize user input
parse command line arguments

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Name the subcategories of design patterns:

A

Creational

Structural

Behavioural

Concurrency

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the two types of creational design patterns?

A

Factory, singleton

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the two types of structural design patterns?

A

Decorator, facade

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the two types of behavioural design patterns

A

interpreter, iterator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the two types of concurrency design patterns?

A

Monitor

Thread pool

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are architecture definitions?

A

“The complex or carefully designed structure of something”

The conceptual structure and logical organization of a computer or computer based system

In short, it is a common way that we have organized our software as a big design. Knowing the architecture tells you a bit about what to expect of the design and the behaviour of the program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the ways to organize entire designs of programs?

A
Structure architectures
Shared memory architecture
messaging architectures
Adaptable system architectures
distributed system architectures
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Name the four types of structure architectures?

A

Component-based
Monolithic application
Layered
Pipes and filters

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is component based structure architecture?

A

Tightly coupled and cohesive modules interact via interfaces

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a monolithic application structure architecture?

A

Single layer application that is coupled together

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a layered structure architecture?

A

Division of functionality into individual layers. Each layer only interacts with the layer directly above or below it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is pipes and filters structure architectures?

A

A sequence of special purpose programs that pass data from one to the other sequentially to achieve the result.