1
Adriano Patrick Cunha
Desenvolvedor de Sucesso
2
Analista de TI da Dataprev
Adriano Patrick Cunha
Prof. da Unifor – Universidade de Fortaleza
3
Não importa como você fez, importa que funcione!
4
Pouco Tempo Depois .
5
Pouco Tempo Depois ..
6
Pouco Tempo Depois ...
7
8
Desenvolvimento Artesanal
9
Exige dedicação e esforço
10
Desenvolvimento Manutenção
Ciclo de Vida
11
Desenvolvimento Manutenção
Degradação
Ciclo de Vida
12
Desenvolvimento Manutenção
Degradação
Maus Cheiros Ciclo de Vida
13
Rigidez
14
Fragilidade
15
Imobilidade
16
Viscosidade
17
Complexidade Desnecessária
- Mantenha Simples - Você precisa disso?
18
Repetição Desnecessária
19
Opacidade
20
Precisamos mudar isso
21
Não dá mais pra fazer apenas pra funcionar
Qualidade
22
Qualidade significa fazer o certo mesmo quando ninguém está olhando.
Henry Ford
23
O que devemos fazer?
Programação Orientada a Objetos
Bug Patterns
Padrões
Clean Code
SOLID
Design Ágil
24
Programação Orientada a Objetos
Encapsulamento Acoplamento Coesão
25
Encapsulamento
Oculta os detalhes de implementação de uma classe para as demais.
26
Encapsulamento
27
Encapsulamento
28
Encapsulamento
29
Encapsulamento
30
Encapsulamento
31
Acoplamento
Define o nível de dependencia entre componentes:
Alto Acoplamento
- Difícil alterar uma funcionalidade interna, sem que suas dependências não sejam afetadas
Baixo Acoplamento
- Manutenções são realizadas de forma mais pontual e com menos impacto.
32
Coesão
- Várias funcionalidades em um único objeto ou método.
Alto Coesão
- Princípio da Responsabilidade Única: Objetos devem fazer, da melhor forma, uma única tarefa.
Baixa Coesão
- Maior reaproveitamento.- Facilidade de Manutenção.
- Mais complexidade.- Reaproveitamento dificultado.- Difícil manutenção.
Um objeto deve fazer e ser apenas aquilo para o qual ele foi criado.
Top Related