Exam Flashcards

1
Q

What does S stand for in the SOLID principles?

A

Single Responsibility Principle

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

What does O stand for in the SOLID principles?

A

Open-Closed Principle

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

What does L stand for in the SOLID principles?

A

Liskov Substitution Principle

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

What does I stand for in the SOLID principles?

A

Interface Segregation Principle

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

What does D stand for in the SOLID principles?

A

Dependency Inversion Principle

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

What are the Structural Design Rules?

A

LOLS
DRY
KISS

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

What does LOLS stand for?

A

Law of Least Surprises

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

What does DRY stand for?

A

Don’t Repeat Yourself

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

What does KISS stand for?

A

Keep it Super Simple

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

What do the conventions E, K, T, V stand for?

A

Element, Key, Type, Value

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

Subclasses should only weaken ___-conditions

A

pre

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

Subclasses should only strengthen ___-conditions

A

post

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

What is verification?

A

The producer’s view of quality (The system was built right)

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

What is validation?

A

The consumer’s view of quality (The right system was built)

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

What is quality assurance?

A

All activities designed to measure and improve quality in a product or process

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

What is quality control?

A

Activities designed to verify the quality of a product, detect faults, and fix faults prior to release

17
Q

What does SRP entail?

A

A class should only have 1 reason to change

18
Q

What does OCP entail?

A

Classes should be open to extension but closed to change

19
Q

What does LSP entail?

A

Derived classes must be completely substitutable for their base class

20
Q

What are Microservices?

A

Microservices is another architectural style which aims to
overcome development throughput deficiencies with traditional
monolithic web based architectures

21
Q

What does ISP entail?

A

No calling class should be forced to depend on methods it doesn’t use

22
Q

What is the rule for package names?

A

Always lower case

23
Q

What are HeartBeats and Pings/Echoes?

A

HeartBeat and Ping/Echo are different architectural tactics which can be used to detect faults in multi-component systems

24
Q

What does DIP entail?

A

Both high level and low level classes depend on abstraction.

Abstraction should not depend on details, but the opposite.

25
What are the three elements to Good Structural Designs?
Easy to communicate & develop Easy to maintain & extend Easy to re-use
26
What are the four pillars of Object Oriented design?
Encapsulation Inheritence Polymorphism Abstraction
27
What is product design?
WHAT we are aiming to build
28
What is structural design?
HOW we build the product
29
What are the seven signs of code rot?
Rigidity Fragility Immobility Viscosity Needless Complexity Needless Repetition Opacity