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
Q

What are the three elements to Good Structural Designs?

A

Easy to communicate & develop

Easy to maintain & extend

Easy to re-use

26
Q

What are the four pillars of Object Oriented design?

A

Encapsulation
Inheritence
Polymorphism
Abstraction

27
Q

What is product design?

A

WHAT we are aiming to build

28
Q

What is structural design?

A

HOW we build the product

29
Q

What are the seven signs of code rot?

A

Rigidity
Fragility
Immobility
Viscosity
Needless Complexity
Needless Repetition
Opacity