SOLID Flashcards

(12 cards)

1
Q

O que é rigidez?

A

Rigidez é a tendência de um sistema para resistir as mudanças.

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

O que é Fragilidade ?

A

Fragilidade é a tendência de um sistema de quebrar de formas inesperadas e inexplicáveis.

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

O que é imobilidade?

A

imobilidade é a incapacidade de reutilizar componentes de software.

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

Como evitar que o sistema fique inter-relacionado?

A

Gerenciamento de dependência e Inversão de dependência

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

Single Responsability Principle

A

Uma classe/modulo deve ter uma e apenas uma razão para mudar. Um ator é a fonte da mudança. Pode ser um usuário ou vários.

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

The Open-Close Principle

A

Um artefato de software deve ser aberto para extensão mas fechado para modificação.

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

Como modificar o comportamento sem modificar o código para estar de acordo com o Open-close principle?

A

Através de inversão de dependência. Separando entre módulos de níveis alto e níveis baixo e fazendo com que os módulos de níveis mais baixos apontem para abstrações. E os módulos de alto níveis também apontem para abstrações.

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

The liskov substituition principle

A

subtipos (classes derivadas) devem ser substituíveis por suas classes base (superclasses) sem alterar a correção do programa

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

The interface segregation principle

A

Não depender de coisas que não precisa.

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

Dependency Inversion Principle (DIP):

A

Módulos de alto nível não devem depender de módulos de baixo nível. Ambos devem depender de abstrações. Abstrações não devem depender de detalhes, e detalhes devem depender de abstrações.

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

Quais são todos os SOLID principles

A

Single Responsibility Principle (SRP):
Open/Closed Principle (OCP):
Liskov Substitution Principle (LSP):
Interface Segregation Principle (ISP):
Dependency Inversion Principle (DIP):

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

use case

A

É aquilo que eu exponho para um driver(Autor primerio: usuário humano, aplicativo de celular etc), seja para um teste, seja para uma API, seja para uma fila.

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