Slide 1

Slide 1 text

fazendo as pazes com projetos legados

Slide 2

Slide 2 text

hernandes eng de software - líder técnico @ Binds.co org @BackEndBrasil podcaster @QuebraDev @onhernandes | hernandes.io

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

o que é um projeto legado?

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

como um projeto se torna legado?

Slide 7

Slide 7 text

possíveis causas:

Slide 8

Slide 8 text

possíveis causas: - curto prazo de entrega

Slide 9

Slide 9 text

possíveis causas: - curto prazo de entrega - preguiça

Slide 10

Slide 10 text

possíveis causas: - curto prazo de entrega - preguiça - copiar & colar do StackOverflow

Slide 11

Slide 11 text

por que um projeto legado é ruim?

Slide 12

Slide 12 text

bugs

Slide 13

Slide 13 text

código mágico

Slide 14

Slide 14 text

difícil de testar

Slide 15

Slide 15 text

manutenção custa caro

Slide 16

Slide 16 text

ninguém quer mexer

Slide 17

Slide 17 text

e se quebrar?

Slide 18

Slide 18 text

ok, e agora, o que eu faço? como resolver? desenvolvo a v2?

Slide 19

Slide 19 text

a menos que o produto tenha uma mudança drástica no negócio e/ou a tecnologia usada esteja obsoleta, uma reescrita completa não mudará nada.

Slide 20

Slide 20 text

isso porque vamos cair nesse problema:

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

todo código carrega uma história, opiniões e algumas noites de dormir de alguém.

Slide 23

Slide 23 text

refatoração

Slide 24

Slide 24 text

refatoração é o processo de alterar o código que já existe sem mudar seu comportamento externo - wikipedia

Slide 25

Slide 25 text

refatorar =/= reescrever o projeto inteiro

Slide 26

Slide 26 text

todo código se torna legado em algum momento, mas há formas de atrasar isso e garantir a qualidade do código.

Slide 27

Slide 27 text

estabeleça regras, normas, fluxos, etc - versionamento, boas práticas, modularização, testes, guias de estilo de código, automatizações, documentação, testes

Slide 28

Slide 28 text

EVITE PROGRAMAÇÃO ORIENTADA A GAMBIARRA evite que código novo se torne uma cópia do código legado

Slide 29

Slide 29 text

crie rotinas de refatoração. refatorar um trecho de código traz valor (R$ pra empresa também) assim como qualquer outra feature ou bugfix

Slide 30

Slide 30 text

evite programação orientada a gambiarra

Slide 31

Slide 31 text

convencer a empresa (gerente de produto, CTO, etc) de que refatoração é necessário, é a parte mais difícil. converse com as pessoas que trabalham com você para te ajudar nisso.

Slide 32

Slide 32 text

além de tudo, precisamos colocar comida na mesa, mas também manter a sanidade mental. se onde está não aceitam um projeto de melhoria, caso possível, procure outro emprego

Slide 33

Slide 33 text

estude boas práticas da sua linguagem/framework

Slide 34

Slide 34 text

fim