02c - Vinicius Quaiato - Over Patternization, YAGNI, KISS

Post on 25-Jun-2015

828 views 1 download

description

A arquitetura de software pode ser definida de uma única vez durante o desenvolvimento de um software: mas essa não é uma boa ideia. Nessa sessão, os palestrantes discorrerão sobre o tema, trazendo experiências próprias e reflexões no intuito de instigar os participantes a pensarem na necessidade de utilizar uma abordagem evolucionária no desenvolvimento de software. Desmistificando inclusive a ideia de que a arquitetura por si só é uma concepção complexa e rebuscada.

Transcript of 02c - Vinicius Quaiato - Over Patternization, YAGNI, KISS

Over Patternization, YAGNI,

KISS Vinicius Quaiato

Sério?! Precisamos mesmo de tanta coisa, agora?

@vquaiato

Vinicius Quaiato

vinicius.quaiato@gmail.com

http://viniciusquaiato.com

http://gonow.com.br

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!

@vquaiato

Vinicius Quaiato

vinicius.quaiato@gmail.com

http://viniciusquaiato.com

http://gonow.com.br