02c - Vinicius Quaiato - Over Patternization, YAGNI, KISS
-
Upload
dnad -
Category
Technology
-
view
828 -
download
1
description
Transcript of 02c - Vinicius Quaiato - Over Patternization, YAGNI, KISS
Over Patternization, YAGNI,
KISS Vinicius Quaiato
Sério?! Precisamos mesmo de tanta coisa, agora?
Sim, isso é o Quaiato...
Sem certificações… sem títulos…
(Bi-Mundial manolos!)
Está não é mais uma daquelas palestras
engraçadinhas...
Estes são slides sérios...
Simplicidade
Sabemos que é a chave
Simplicidade
Estamos falando sobre isso há muito tempo...
Ah vá
Acabaram de falar isso, antes de mim o/
Simplicidade
Sabemos que BDUF é um cara muito, muito
malvado
The BDUF
Então por quê?
Sim...
Por que sempre tentamos fazer(fazemos!) BDUF?
Por que...
Sempre tentamos preparar o software para algo
que não precisamos?
Pior
Preparamos para algo complexo e que
possivelmente não precisamos!
Mas...
Eu preciso desses padrões!
Você não precisa!
Na maioria das vezes achamos que precisamos...
Você não precisa!
Queremos precisar...
Estamos doentes
Por mais que pensemos ter tomado as vacinas...
Patterns Happy
Ainda não nos livramos deste sintoma
Patterns Happy
Patterns Happy
Estamos felizes buscando mais e mais lugares
para colocar um padrão
Patterns Happy
Estamos felizes aprendendo e usando padrões
Patterns Happy
Só mais um padrãozinho aqui...
Patterns Happy
Acreditamos que conhecer padrões nos levará a
um bom design
Patterns Happy
Acreditamos que conhecer padrões nos fará bons
designers de código
Patterns Happy
Só uma
Factory
Mais
um
Singleto
n
Aqui
cabe um
Builder Vamos
usar
Repositor
y
E o
Visitor?
Já viu? Vamos
usar um
Facade
Sim aqui
vamos
de
Strategy
Memento
?
Adapter
, ham?!
Aqui é
bom o
Decorator
Think...
Nem sempre onde cabe um padrão é preciso
colocar o padrão
Trust me
YAGNI
You Aren’t Going Need It / You Ain’t Gonna Need
It
YAGNI
Identificar um padrão não quer dizer que
precisamos implementá-lo
YAGNI
Em alguns momentos o padrão é complexidade
extra
YAGNI
Se você não conhece o futuro não aceite que o
compreende
YAGNI
Se você não precisa agora use quando precisar
YAGNI
O tempo é finito: use-o para o que é necessário
YAGNI
O novo código precisa ser testado =>
documentado e funcional
YAGNI
Discernimento + Conhecimento = Boas Decisões
KISS
KISS
KISS
KISS
Keep It Simple, Stupid!
Mas...
Patterns não são bacanas?
Sim...
Mas seu uso muitas vezes nos faz não enxergar
soluções mais simples
Juro!
Muitas vezes condicionais são mais simples e
claras que estratégias
Juro!
Muitas vezes são mais simples de escrever,
manter, testar e comunicar
Fique de olho
Keep It Simple, Stupid
Obrigado!