Top Banner
De Freddy Krueger à Brad Pitt. Como melhorar o seu código e fazê-lo ficar lindo
38

De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Jan 10, 2017

Download

Technology

Anna Cruz
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

De Freddy Krueger à Brad Pitt. Como melhorar o seu código e fazê-lo ficar lindo

Page 2: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Analista de Desenvolvimento & ex-Infra (fora do SERPRO) & @rubyonrio & curiosa & hiperativa & tentando dominar o mundo

Quem sou eu?

Page 3: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O que vamos ver?

• SOLID (Boas práticas)

• Código Limpo

Page 4: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O que vamos ver?

• SOLID (Boas práticas)

• Código Limpo

Page 5: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Tá mas porque isso é importante?

● Mais fácil para compreender

● Mais fácil de encontrar e resolver bugs

Ou seja, melhora (e muito) a MANTENABILIDADE do código

Page 6: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo
Page 7: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O que contribui para um código feio?

Eu quero é terminar rápido!!!

Pra que fazer direito? Tô de saco cheio desse projeto já!

Tenho que começar a fazer agora!!!

Depois refatoro!

Todo mundo faz assim!!!

Page 8: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O que contribui para um código feio?

Eu quero é terminar rápido!!!

Pra que fazer direito? Tô de saco cheio desse projeto já!

Tenho que começar a fazer agora!!!

Depois refatoro!

Todo mundo faz assim!!!

Page 9: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Porque o código continua feio?

● Desenvolvedores saem do projeto● Novos desenvolvedores entram no projeto e

tem medo de modificar algo● Mito de que demora muito mais tempo

Page 10: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O poder de mudar isso é nosso!

Page 11: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Respire fundo e....

Page 12: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Sobre o uso de comentários:

Não use!

Page 13: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Sobre o uso de comentários:

Não use!

Calma calma calma! Não criemos pânico!!!

Page 14: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

O código deve ser o máximo possível auto-explicativo

Comentários podem e devem ser usados, mas principalmente nas seguintes condições:

● Se não dá pra fazer nada melhor.● Para alertar sobre algo importante sobre

aquele trecho de código.● TODO / FIXME

Page 15: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

SOLID

ingle Responsibilitypen-Closediskov Substitutionnterface Segregationependency Inversion

Page 16: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo
Page 17: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Single Responsibility

Cada classe ou método deve ter apenas uma responsabilidade, ou seja, mudar por apenas um motivo

Page 18: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Single Responsibility

Cada classe ou método deve ter apenas uma responsabilidade, ou seja, mudar por apenas um motivo

Objetivo:

● Classes ou métodos pequenas e coesas

Page 19: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Single Responsibility

Page 20: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Single Responsibility

Page 21: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Open-Closed

As classes devem ser abertas para extensão, mas fechadas para modificação.

Page 22: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Open-Closed

As classes devem ser abertas para extensão, mas fechadas para modificação.

Objetivos:

● Evolução do código mais fácil e rápida● Melhorar a testabilidade

Page 23: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Open-Closed

Page 24: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Open-Closed

Page 25: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Liskov Substitution

Uma classe pode ser substituída por uma classe derivada dela sem a alteração de funcionamento de um método.

Page 26: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Liskov Substitution

Uma classe pode ser substituída por uma classe derivada dela sem a alteração de funcionamento de um método.

Objetivos:

● Reaproveitamento de código mais eficiente● Melhorar a testabilidade

Page 27: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Liskov Substitution

Page 28: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Liskov Substitution

Page 29: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Interface Segregation

O cliente de uma classe não deve ser obrigado a herdar métodos que ele não utiliza.

Page 30: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Interface Segregation

O cliente de uma classe não deve ser obrigado a herdar métodos que ele não utiliza.

Objetivo:

● Interfaces menores, mais coesas e mais estáveis

Page 31: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Interface Segregation

Page 32: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Interface Segregation

Page 33: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Dependency Inversion

Módulos de alto nível não devem depender de módulos de baixo nível e sim de abstrações e estas não devem depender de detalhes e sim os detalhes dependerem delas.

Page 34: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Dependency Inversion

Módulos de alto nível não devem depender de módulos de baixo nível e sim de abstrações e estas não devem depender de detalhes e sim os detalhes dependerem delas.

Objetivos:

● Diminuir a coesão entre os diferentes módulos

● Aumentar o reuso de classes

Page 35: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Dependency Inversion

Page 36: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Dependency Inversion

Page 37: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo
Page 38: De Fred Krueger a Brad Pitt como melhorar o seu código e fazê-lo ficar lindo

Anna Cruz

[email protected]#7705DE706

Códigos emhttps://github.com/annacruz/exemplos-devday-serpro