SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
PADRÕES DE PROJETO SUPERESTIMADOS?
@MarcosBrizeno
O QUE VAMOS CONVERSAR HOJE
Quem precisa de padrões de projeto hoje em dia?
De onde vieram padrões de projeto
A jovem área do Desenvolvimento de Software
Mas nem tão jovem assim
Padrões de projeto são superestimados?
2
QUEM PRECISA DE PADRÕES
DE PROJETO HOJE EM DIA?
3
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
4
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
5
http://stackoverflow.com/questions/327955/does-functional-programming-replace-gof-
design-patterns
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
6
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
7
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
8
http://programmers.stackexchange.com/questions/89273/
where-are-all-the-functional-programming-design-patterns
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
9
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
10
http://www.c2.com/cgi/wiki?AreDesignPatternsMissingLanguageFeatures
QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA?
11
http://www.norvig.com/design-patterns/
DE ONDE VIERAM OS
PADRÕES DE PROJETO
12
DE ONDE VIERAM PADRÕES DE PROJETO
13
https://en.wikipedia.org/wiki/A_Pattern_Language
1977
DE ONDE VIERAM PADRÕES DE PROJETO
14
"The street cafe provides a unique setting, special to cities: a
place where people can sit lazily, legitimately, be on view, and
watch the world go by... Encourage local cafes to spring up in
each neighborhood. Make them intimate places, with several
rooms, open to a busy path, where people can sit with coffee
or a drink and watch the world go by. Build the front of the
cafe so that a set of tables stretch out of the cafe, right into
the street."
— Christopher Alexander et al., A Pattern Language, p. 437,439
https://en.wikipedia.org/wiki/A_Pattern_Language
DE ONDE VIERAM PADRÕES DE PROJETO
15
DE ONDE VIERAM PADRÕES DE PROJETO
16
PADRÕES SÃO:
1. UMA SOLUÇÃO
2. PARA UM PROBLEMA
3. DADO UM CONTEXTO
DE ONDE VIERAM PADRÕES DE PROJETO
17
1994
DE ONDE VIERAM PADRÕES DE PROJETO
18
+
David Rice,
Matthew Foemmel
Edward Heatt
Rovert Mee
Randy Stafford
2003
DE ONDE VIERAM PADRÕES DE PROJETO
19
DE ONDE VIERAM PADRÕES DE PROJETO
20
A JOVEM ÁREA DO
DESENVOLVIMENTO DE
SOFTWARE
21
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
22
1965 - Uso do termo Software Engineering
1968 - Crise do Software
1990 - Rede mundial de computadores
2001 - Agile Manifesto
1940 - Máquina de Turing
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
23
AINDA NÃO DÁ PRA SABER
O QUE DÁ CERTO
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
24
http://arxiv.org/pdf/1502.03526v1.pdf
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
25
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
26
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
27
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
28
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
29
FAKE IT 'TIL YOU MAKE IT
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
30
1986
1975
MAS NEM TÃO JOVEM ASSIM
31
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
32
AINDA NÃO DÁ PRA SABER
O QUE DÁ CERTO
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
33
MAS DA PRA SABER O QUE
NÃO DÁ CERTO DE JEITO
NENHUM
34
CÓDIGO LIMPO
PADRÕES DE PROJETO
SOLID
TDD
DOCUMENTADO
TESTÁVEL
EFICIENTE
LEGÍVEL
FUNCIONA
FÁCIL DE IMPLANTAR
INTEGRAÇÃO CONTÍNUA
PAREAR
MAS NEM TÃO JOVEM ASSIM
MAS NEM TÃO JOVEM ASSIM
35
PADRÕES DE PROJETO SÃO
SUPERESTIMADOS?
36
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
37
Padrões de projeto são uma tentativa de estabelecer
uma coletânea destes conhecimentos.
- Hugo Corbucci, prefácio de Refatorando com Padrões de Projeto
A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE
38
OBRIGADO!

Mais conteúdo relacionado

Destaque

Cómo aprende el cerebro
Cómo aprende el cerebroCómo aprende el cerebro
Cómo aprende el cerebroMaria Alvarado
 
Mapa de maria alvarado
Mapa de maria alvaradoMapa de maria alvarado
Mapa de maria alvaradoMaria Alvarado
 
2010 Progressive Dinner
2010 Progressive Dinner2010 Progressive Dinner
2010 Progressive Dinnerunkraut
 
Workshop - Ambiente de negocios
Workshop - Ambiente de negociosWorkshop - Ambiente de negocios
Workshop - Ambiente de negocioseducationstore
 
Gran bicicletiada por el día del niño
Gran bicicletiada por el día del niñoGran bicicletiada por el día del niño
Gran bicicletiada por el día del niñoFrancocdis
 
El portafolio-estudiantil (1)
El portafolio-estudiantil (1)El portafolio-estudiantil (1)
El portafolio-estudiantil (1)Jenn PG
 
Entrepreneurship failure
Entrepreneurship failureEntrepreneurship failure
Entrepreneurship failureSimran Kaur
 
Reasoning about data and consistency in systems
Reasoning about data and consistency in systemsReasoning about data and consistency in systems
Reasoning about data and consistency in systemsDaniel Norman
 

Destaque (12)

Firearms4
Firearms4Firearms4
Firearms4
 
Ajit singh cv
Ajit singh cvAjit singh cv
Ajit singh cv
 
Cómo aprende el cerebro
Cómo aprende el cerebroCómo aprende el cerebro
Cómo aprende el cerebro
 
Mapa de maria alvarado
Mapa de maria alvaradoMapa de maria alvarado
Mapa de maria alvarado
 
HRD-676 Acceptance Letter
HRD-676 Acceptance LetterHRD-676 Acceptance Letter
HRD-676 Acceptance Letter
 
2010 Progressive Dinner
2010 Progressive Dinner2010 Progressive Dinner
2010 Progressive Dinner
 
Workshop - Ambiente de negocios
Workshop - Ambiente de negociosWorkshop - Ambiente de negocios
Workshop - Ambiente de negocios
 
Gran bicicletiada por el día del niño
Gran bicicletiada por el día del niñoGran bicicletiada por el día del niño
Gran bicicletiada por el día del niño
 
Matemática
MatemáticaMatemática
Matemática
 
El portafolio-estudiantil (1)
El portafolio-estudiantil (1)El portafolio-estudiantil (1)
El portafolio-estudiantil (1)
 
Entrepreneurship failure
Entrepreneurship failureEntrepreneurship failure
Entrepreneurship failure
 
Reasoning about data and consistency in systems
Reasoning about data and consistency in systemsReasoning about data and consistency in systems
Reasoning about data and consistency in systems
 

Semelhante a Padrões de projeto superestimados

Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...Rodrigo Wanderley de Melo Cardoso
 
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...Rodrigo Wanderley de Melo Cardoso
 
Mercado, carreiras e escolhas no mercado de T.I
Mercado, carreiras e escolhas no mercado de T.IMercado, carreiras e escolhas no mercado de T.I
Mercado, carreiras e escolhas no mercado de T.IDaniel Marcos
 
HTML5 - William Dias - Davi Reine - XVII SACOMP
HTML5 - William Dias - Davi Reine - XVII SACOMPHTML5 - William Dias - Davi Reine - XVII SACOMP
HTML5 - William Dias - Davi Reine - XVII SACOMPWilliam Dias
 
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...João Poças Martins
 
Sistemas para o Mundo Real
Sistemas para o Mundo RealSistemas para o Mundo Real
Sistemas para o Mundo RealLeandro Silva
 
Uma linha tênue entre arquitetura de software e o dia a dia dev
Uma linha tênue entre arquitetura de software e o dia a dia devUma linha tênue entre arquitetura de software e o dia a dia dev
Uma linha tênue entre arquitetura de software e o dia a dia devEduardo Cesar
 
TDC 2014 - A influência dos processos de desenvolvimento na arquitetura
TDC 2014 - A influência dos processos de desenvolvimento na arquiteturaTDC 2014 - A influência dos processos de desenvolvimento na arquitetura
TDC 2014 - A influência dos processos de desenvolvimento na arquiteturaEric Lemes
 
Overview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebOverview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebHector Nieva
 
O ecossistema e o estado atual do php - o presente, o passado e o futuro da ...
O ecossistema e o estado atual do php  - o presente, o passado e o futuro da ...O ecossistema e o estado atual do php  - o presente, o passado e o futuro da ...
O ecossistema e o estado atual do php - o presente, o passado e o futuro da ...Rodrigo Wanderley de Melo Cardoso
 
Design de Software com ASP.NET MVC
Design de Software com ASP.NET MVCDesign de Software com ASP.NET MVC
Design de Software com ASP.NET MVCWaldyr Felix
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Alvaro Viebrantz
 
Segurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisSegurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisRubens Guimarães - MTAC MVP
 
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?RC Comunicação
 
O que é Internet das Coisas e como ela afetará em seu cotidiano?
O que é Internet das Coisas e como ela afetará em seu cotidiano?O que é Internet das Coisas e como ela afetará em seu cotidiano?
O que é Internet das Coisas e como ela afetará em seu cotidiano?Faculdade Martha Falcão
 
Aitana Launch - Seattle Overview - Português (br)
Aitana Launch - Seattle Overview - Português (br)Aitana Launch - Seattle Overview - Português (br)
Aitana Launch - Seattle Overview - Português (br)Fernando Rizzato
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHPFlávio Lisboa
 

Semelhante a Padrões de projeto superestimados (20)

Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
 
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...
Ecossistema PHP - O presente, o passado e o futuro da linguagem back-end mais...
 
Mercado, carreiras e escolhas no mercado de T.I
Mercado, carreiras e escolhas no mercado de T.IMercado, carreiras e escolhas no mercado de T.I
Mercado, carreiras e escolhas no mercado de T.I
 
HTML5 - William Dias - Davi Reine - XVII SACOMP
HTML5 - William Dias - Davi Reine - XVII SACOMPHTML5 - William Dias - Davi Reine - XVII SACOMP
HTML5 - William Dias - Davi Reine - XVII SACOMP
 
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...
Desenvolvimento de processos de interação entre tecnologia BIM e equipamentos...
 
Workshop Webinsider 2003
Workshop Webinsider 2003Workshop Webinsider 2003
Workshop Webinsider 2003
 
Sistemas para o Mundo Real
Sistemas para o Mundo RealSistemas para o Mundo Real
Sistemas para o Mundo Real
 
Mergulhando no ecossistema .NET
Mergulhando no ecossistema .NETMergulhando no ecossistema .NET
Mergulhando no ecossistema .NET
 
Uma linha tênue entre arquitetura de software e o dia a dia dev
Uma linha tênue entre arquitetura de software e o dia a dia devUma linha tênue entre arquitetura de software e o dia a dia dev
Uma linha tênue entre arquitetura de software e o dia a dia dev
 
TDC 2014 - A influência dos processos de desenvolvimento na arquitetura
TDC 2014 - A influência dos processos de desenvolvimento na arquiteturaTDC 2014 - A influência dos processos de desenvolvimento na arquitetura
TDC 2014 - A influência dos processos de desenvolvimento na arquitetura
 
Overview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebOverview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento Web
 
O ecossistema e o estado atual do php - o presente, o passado e o futuro da ...
O ecossistema e o estado atual do php  - o presente, o passado e o futuro da ...O ecossistema e o estado atual do php  - o presente, o passado e o futuro da ...
O ecossistema e o estado atual do php - o presente, o passado e o futuro da ...
 
Design de Software com ASP.NET MVC
Design de Software com ASP.NET MVCDesign de Software com ASP.NET MVC
Design de Software com ASP.NET MVC
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces
 
Segurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisSegurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas Profissionais
 
02 wtf is iot - fabio palma pdf
02  wtf is iot - fabio palma pdf02  wtf is iot - fabio palma pdf
02 wtf is iot - fabio palma pdf
 
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?
DESIGNER E FRONT-END DEV: Prontos para mudar seu workflow?
 
O que é Internet das Coisas e como ela afetará em seu cotidiano?
O que é Internet das Coisas e como ela afetará em seu cotidiano?O que é Internet das Coisas e como ela afetará em seu cotidiano?
O que é Internet das Coisas e como ela afetará em seu cotidiano?
 
Aitana Launch - Seattle Overview - Português (br)
Aitana Launch - Seattle Overview - Português (br)Aitana Launch - Seattle Overview - Português (br)
Aitana Launch - Seattle Overview - Português (br)
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHP
 

Mais de Marcos Brizeno

Refatorando tudo! [Agile brazil 2017]
Refatorando tudo! [Agile brazil 2017] Refatorando tudo! [Agile brazil 2017]
Refatorando tudo! [Agile brazil 2017] Marcos Brizeno
 
GraphQL ou APIs RESTful - DevDay 2017
GraphQL ou APIs RESTful - DevDay 2017GraphQL ou APIs RESTful - DevDay 2017
GraphQL ou APIs RESTful - DevDay 2017Marcos Brizeno
 
Developer Experience como diferencial na Transformação Digital
Developer Experience como diferencial na Transformação DigitalDeveloper Experience como diferencial na Transformação Digital
Developer Experience como diferencial na Transformação DigitalMarcos Brizeno
 
Desventuras em série adotando microserviços
Desventuras em série adotando microserviçosDesventuras em série adotando microserviços
Desventuras em série adotando microserviçosMarcos Brizeno
 
Aprenda Elixir em um final de semana
Aprenda Elixir em um final de semanaAprenda Elixir em um final de semana
Aprenda Elixir em um final de semanaMarcos Brizeno
 
5 mitos sobre código bom
5 mitos sobre código bom5 mitos sobre código bom
5 mitos sobre código bomMarcos Brizeno
 
Abraçando a mudança com Código
Abraçando a mudança com CódigoAbraçando a mudança com Código
Abraçando a mudança com CódigoMarcos Brizeno
 
Práticas Ágeis Distribuidas
Práticas Ágeis DistribuidasPráticas Ágeis Distribuidas
Práticas Ágeis DistribuidasMarcos Brizeno
 
The fine art of slacking
The fine art of slackingThe fine art of slacking
The fine art of slackingMarcos Brizeno
 
Aplicando padrões de projeto em Ruby
Aplicando padrões de projeto em RubyAplicando padrões de projeto em Ruby
Aplicando padrões de projeto em RubyMarcos Brizeno
 
Comunidade e Carreira: Você Ganha Todos Ganham
Comunidade e Carreira: Você Ganha Todos GanhamComunidade e Carreira: Você Ganha Todos Ganham
Comunidade e Carreira: Você Ganha Todos GanhamMarcos Brizeno
 
Entrega Contínua - E Eu Com Isso?
Entrega Contínua - E Eu Com Isso?Entrega Contínua - E Eu Com Isso?
Entrega Contínua - E Eu Com Isso?Marcos Brizeno
 
The fine art of slacking
The fine art of slackingThe fine art of slacking
The fine art of slackingMarcos Brizeno
 
Programar #COMOFAS ? - Rails Girls Fortaleza
Programar #COMOFAS ? - Rails Girls FortalezaProgramar #COMOFAS ? - Rails Girls Fortaleza
Programar #COMOFAS ? - Rails Girls FortalezaMarcos Brizeno
 
Metaprogramação Ruby
Metaprogramação RubyMetaprogramação Ruby
Metaprogramação RubyMarcos Brizeno
 

Mais de Marcos Brizeno (18)

Refatorando tudo! [Agile brazil 2017]
Refatorando tudo! [Agile brazil 2017] Refatorando tudo! [Agile brazil 2017]
Refatorando tudo! [Agile brazil 2017]
 
GraphQL ou APIs RESTful - DevDay 2017
GraphQL ou APIs RESTful - DevDay 2017GraphQL ou APIs RESTful - DevDay 2017
GraphQL ou APIs RESTful - DevDay 2017
 
Developer Experience como diferencial na Transformação Digital
Developer Experience como diferencial na Transformação DigitalDeveloper Experience como diferencial na Transformação Digital
Developer Experience como diferencial na Transformação Digital
 
Desventuras em série adotando microserviços
Desventuras em série adotando microserviçosDesventuras em série adotando microserviços
Desventuras em série adotando microserviços
 
Aprenda Elixir em um final de semana
Aprenda Elixir em um final de semanaAprenda Elixir em um final de semana
Aprenda Elixir em um final de semana
 
5 mitos sobre código bom
5 mitos sobre código bom5 mitos sobre código bom
5 mitos sobre código bom
 
Abraçando a mudança com Código
Abraçando a mudança com CódigoAbraçando a mudança com Código
Abraçando a mudança com Código
 
Práticas Ágeis Distribuidas
Práticas Ágeis DistribuidasPráticas Ágeis Distribuidas
Práticas Ágeis Distribuidas
 
The fine art of slacking
The fine art of slackingThe fine art of slacking
The fine art of slacking
 
Aplicando padrões de projeto em Ruby
Aplicando padrões de projeto em RubyAplicando padrões de projeto em Ruby
Aplicando padrões de projeto em Ruby
 
Comunidade e Carreira: Você Ganha Todos Ganham
Comunidade e Carreira: Você Ganha Todos GanhamComunidade e Carreira: Você Ganha Todos Ganham
Comunidade e Carreira: Você Ganha Todos Ganham
 
Dubles de teste
Dubles de testeDubles de teste
Dubles de teste
 
Entrega Contínua - E Eu Com Isso?
Entrega Contínua - E Eu Com Isso?Entrega Contínua - E Eu Com Isso?
Entrega Contínua - E Eu Com Isso?
 
The fine art of slacking
The fine art of slackingThe fine art of slacking
The fine art of slacking
 
Programar #COMOFAS ? - Rails Girls Fortaleza
Programar #COMOFAS ? - Rails Girls FortalezaProgramar #COMOFAS ? - Rails Girls Fortaleza
Programar #COMOFAS ? - Rails Girls Fortaleza
 
Metaprogramação Ruby
Metaprogramação RubyMetaprogramação Ruby
Metaprogramação Ruby
 
Arquitetura Ágil
Arquitetura ÁgilArquitetura Ágil
Arquitetura Ágil
 
Clean code
Clean codeClean code
Clean code
 

Padrões de projeto superestimados

  • 1. PADRÕES DE PROJETO SUPERESTIMADOS? @MarcosBrizeno
  • 2. O QUE VAMOS CONVERSAR HOJE Quem precisa de padrões de projeto hoje em dia? De onde vieram padrões de projeto A jovem área do Desenvolvimento de Software Mas nem tão jovem assim Padrões de projeto são superestimados? 2
  • 3. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 3
  • 4. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 4
  • 5. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 5 http://stackoverflow.com/questions/327955/does-functional-programming-replace-gof- design-patterns
  • 6. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 6
  • 7. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 7
  • 8. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 8 http://programmers.stackexchange.com/questions/89273/ where-are-all-the-functional-programming-design-patterns
  • 9. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 9
  • 10. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 10 http://www.c2.com/cgi/wiki?AreDesignPatternsMissingLanguageFeatures
  • 11. QUEM PRECISA DE PADRÕES DE PROJETO HOJE EM DIA? 11 http://www.norvig.com/design-patterns/
  • 12. DE ONDE VIERAM OS PADRÕES DE PROJETO 12
  • 13. DE ONDE VIERAM PADRÕES DE PROJETO 13 https://en.wikipedia.org/wiki/A_Pattern_Language 1977
  • 14. DE ONDE VIERAM PADRÕES DE PROJETO 14 "The street cafe provides a unique setting, special to cities: a place where people can sit lazily, legitimately, be on view, and watch the world go by... Encourage local cafes to spring up in each neighborhood. Make them intimate places, with several rooms, open to a busy path, where people can sit with coffee or a drink and watch the world go by. Build the front of the cafe so that a set of tables stretch out of the cafe, right into the street." — Christopher Alexander et al., A Pattern Language, p. 437,439 https://en.wikipedia.org/wiki/A_Pattern_Language
  • 15. DE ONDE VIERAM PADRÕES DE PROJETO 15
  • 16. DE ONDE VIERAM PADRÕES DE PROJETO 16 PADRÕES SÃO: 1. UMA SOLUÇÃO 2. PARA UM PROBLEMA 3. DADO UM CONTEXTO
  • 17. DE ONDE VIERAM PADRÕES DE PROJETO 17 1994
  • 18. DE ONDE VIERAM PADRÕES DE PROJETO 18 + David Rice, Matthew Foemmel Edward Heatt Rovert Mee Randy Stafford 2003
  • 19. DE ONDE VIERAM PADRÕES DE PROJETO 19
  • 20. DE ONDE VIERAM PADRÕES DE PROJETO 20
  • 21. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 21
  • 22. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 22 1965 - Uso do termo Software Engineering 1968 - Crise do Software 1990 - Rede mundial de computadores 2001 - Agile Manifesto 1940 - Máquina de Turing
  • 23. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 23 AINDA NÃO DÁ PRA SABER O QUE DÁ CERTO
  • 24. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 24 http://arxiv.org/pdf/1502.03526v1.pdf
  • 25. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 25
  • 26. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 26
  • 27. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 27
  • 28. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 28
  • 29. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 29 FAKE IT 'TIL YOU MAKE IT
  • 30. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 30 1986 1975
  • 31. MAS NEM TÃO JOVEM ASSIM 31
  • 32. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 32 AINDA NÃO DÁ PRA SABER O QUE DÁ CERTO
  • 33. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 33 MAS DA PRA SABER O QUE NÃO DÁ CERTO DE JEITO NENHUM
  • 34. 34 CÓDIGO LIMPO PADRÕES DE PROJETO SOLID TDD DOCUMENTADO TESTÁVEL EFICIENTE LEGÍVEL FUNCIONA FÁCIL DE IMPLANTAR INTEGRAÇÃO CONTÍNUA PAREAR MAS NEM TÃO JOVEM ASSIM
  • 35. MAS NEM TÃO JOVEM ASSIM 35
  • 36. PADRÕES DE PROJETO SÃO SUPERESTIMADOS? 36
  • 37. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 37 Padrões de projeto são uma tentativa de estabelecer uma coletânea destes conhecimentos. - Hugo Corbucci, prefácio de Refatorando com Padrões de Projeto
  • 38. A JOVEM ÁREA DO DESENVOLVIMENTO DE SOFTWARE 38