4. PRAQUE?
– Melhorar a manutenção do código com menos esforço.
– Tornar o código mais fácil de entender e testar.
– Melhorar capacidade de reuso.
– Diminuir o acoplamento entre objetos.
CODE SMELLS
13. liskov
"Se você pode invocar um método q() de uma classe T (base), deve poder também invocar o método q() de uma classe
T'(derivada) que é derivada com herança de T (base).”
23. DEPENDENCYINVERSION
Dependecy Injection, é um design Pattern que prega um
tipo de controle externo de instâncias "Um container, uma
IOC = INVERSION OF CONTROL é um pattern que prega
para usarmos o controle das instâncias de uma determinada
classe ser tratada externamente e não dentro da classe em
questão, ou seja, Inverter o controle de uma classe
24. DRY
DontRepeatYourSelf
A piece of logic should only be represented once in an application.
Repetition is the root of all software evil.
25. DRY
Repetition does not only refer to writing the same piece of logic twice in two different places. It also refers
to repetition in your processes – testing, debugging, deployment etc. Repetition in logic is often solved by
abstractions or some common service classes whereas repetition in your process is tackled by
automation. A lot of tedious processes can be automated by concepts from Continuous Integration and
related automation softwarE. Unit testing can be automated by testing tools such as nUnit….
DRY is known by other names as well: Once and Only Once, and Duplication is Evil (DIE).