Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Fazendo as pazes com código legado - Frontend SP Meetup
Search
Hernandes
January 30, 2020
Technology
0
150
Fazendo as pazes com código legado - Frontend SP Meetup
Hernandes
January 30, 2020
Tweet
Share
More Decks by Hernandes
See All by Hernandes
GitHub ¡Presente!
onhernandes
0
27
Cuidando do seu código
onhernandes
0
15
Processamento de filas com JS + Serverless + Google Cloud
onhernandes
0
38
fazendo as pazes com projetos legados
onhernandes
0
63
criando sua carreira sem recursos e sem apoio na visão de um periférico
onhernandes
0
48
Other Decks in Technology
See All in Technology
JAWS-UG Bedrock Claude Night
yamahiro
3
610
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.1k
本当のAWS基礎
toru_kubota
0
530
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
4
440
JSON攻略法.pdf
miyakemito
8
5.1k
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
300
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
640
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
16k
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
910
Building a RAG-poweredAI chat appwith Python and VS Code
pamelafox
0
110
Cracking the KubeCon CfP
inductor
2
250
On Your Data を超えていく!
hirotomotaguchi
2
690
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
237
11k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Faster Mobile Websites
deanohume
299
30k
Web Components: a chance to create the future
zenorocha
305
41k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
19
1.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
We Have a Design System, Now What?
morganepeng
43
6.8k
Product Roadmaps are Hard
iamctodd
44
9.7k
How GitHub (no longer) Works
holman
304
140k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Transcript
fazendo as pazes com projetos legados
hernandes eng de software - líder técnico @ Binds.co org
@BackEndBrasil podcaster @QuebraDev @onhernandes | hernandes.io
None
o que é um projeto legado?
None
como um projeto se torna legado?
possíveis causas:
possíveis causas: - curto prazo de entrega
possíveis causas: - curto prazo de entrega - preguiça
possíveis causas: - curto prazo de entrega - preguiça -
copiar & colar do StackOverflow
por que um projeto legado é ruim?
bugs
código mágico
difícil de testar
manutenção custa caro
ninguém quer mexer
e se quebrar?
ok, e agora, o que eu faço? como resolver? desenvolvo
a v2?
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.
isso porque vamos cair nesse problema:
None
todo código carrega uma história, opiniões e algumas noites de
dormir de alguém.
refatoração
refatoração é o processo de alterar o código que já
existe sem mudar seu comportamento externo - wikipedia
refatorar =/= reescrever o projeto inteiro
todo código se torna legado em algum momento, mas há
formas de atrasar isso e garantir a qualidade do código.
estabeleça regras, normas, fluxos, etc - versionamento, boas práticas, modularização,
testes, guias de estilo de código, automatizações, documentação, testes
EVITE PROGRAMAÇÃO ORIENTADA A GAMBIARRA evite que código novo se
torne uma cópia do código legado
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
evite programação orientada a gambiarra
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.
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
estude boas práticas da sua linguagem/framework
fim