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
TemDendê: Desenvolvimento PHP a Moda Baiana
Search
Jonata Weber
October 07, 2017
Programming
0
34
TemDendê: Desenvolvimento PHP a Moda Baiana
Jonata Weber
October 07, 2017
Tweet
Share
More Decks by Jonata Weber
See All by Jonata Weber
PHPStan - Analisador Estático
jonataa
0
93
PHP Moderno
jonataa
0
83
Programação Reativa com RxJS
jonataa
0
110
O que esperar de um profissional de TI
jonataa
0
33
A onda agora é função como serviço
jonataa
0
28
Programação Funcional com Acarajé e Dendê
jonataa
0
50
Curso de Programação Funcional com JavaScript
jonataa
0
130
Medindo a Performance de Códigos PHP
jonataa
0
58
5 motivos para você participar de eventos
jonataa
0
140
Other Decks in Programming
See All in Programming
冗長なエラーログを削減し、スタックトレースを手に入れる / Reducing Verbose Error Logs and Obtaining Stack Traces
upamune
0
790
Node.js v22 で変わること
yosuke_furukawa
PRO
9
3.5k
Fast JSX: Don't clone props object #28768
yossydev
1
130
2 週間で Twitter Bot を作ってみた
contour_gara
0
570
VS Code をプロダクトにどう取り込むか
onomax
1
370
Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets
hollycummins
0
230
ONE WEDGE_company_guide
1wedge_one
0
490
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
43
19k
Rubyでたのしむクリエイティブコーディング/Enjoy Creative coding with Ruby
chobishiba
1
180
dbtのドメイン分割による データ基盤の改善とDigdagとの連携
sakama
0
360
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
420
大規模Reactアプリのリアーキテクチャ~8万行のTanStack Query移行の軌跡~
kj455
4
970
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Visualization
eitanlees
136
14k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
357
22k
Product Roadmaps are Hard
iamctodd
44
9.7k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Done Done
chrislema
178
15k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
How to name files
jennybc
65
93k
Producing Creativity
orderedlist
PRO
337
39k
GraphQLとの向き合い方2022年版
quramy
32
12k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Transcript
TemDenDê Desenvolvimento PHP a moda baiana
@JonataWeber
eXtreme Programming (XP)
XP: Princípios • Feedback rápido • Presumir simplicidade • Mudanças
incrementais • Abraçar mudanças • Trabalho de alta qualidade
XP: Práticas • Jogo de Planejamento • Pequenas entregas •
Metáfora • Design Simples • Testes de Aceitação • Semana de 40 horas • Propriedade Coletiva • Pair Programming • Padronização de código • Test Driven Development (TDD) • Refatoração • Integração Contínua
XP: Práticas • Jogo de Planejamento • Pequenas entregas •
Metáfora • Design Simples • Testes de Aceitação • Semana de 40 horas • Propriedade Coletiva • Pair Programming • Padronização de código • Test Driven Development (TDD) • Refatoração • Integração Contínua
Test Driven Development (TDD)
Escreva um teste que falhe Refatore para melhorar o teste
Faça a pequena mudança passar o teste Execute todos os testes e veja um falhar Execute todos os testes e veja todos passarem Execute todos os testes e veja todos passarem
None
Benefícios • Mais feedbacks durante o desenvolvimento • Maior produtividade
• Redução de 40–80% dos bugs em produção • Menor custo de manutenção • Legibilidade do código • Design guiado pelos testes • Documentação "viva"
O código seria algo mais ou menos assim...
Valor Esperado Valor Obtido O código seria algo mais ou
menos assim...
Live coding
Onde aprender mais sobre TDD
Recomendações
TL;DR • TDD não elimina, mas reduz a quantidade de
bugs
Obrigado! @JonataWeber @WeberSchool.com.br
Referências https://medium.com/desenvolvimento-%C3%A1gil/a-nova-metodologia-69b8f8a379c7 http://www.thedevelopersconference.com.br/arquivos/tdc/2012/TDD20coisas.pd http://stackoverflow.com/questions/211557/what-is-a-metaphor-in-the-context-o-xp https://www.google.com/about/careers/students/guide-to-technical-developmenthtml https://br.udacity.com/course/software-testing--cs258/ http://andrewhuggins.com/post/testing-and-tdd-talk-with-live-coding-examples http://ahuggins.github.io/presentation-tdd/ http://henriquebastos.net/a-forma-como-voce-programa-faz-toda-a-diferenca/ https://pt.wikipedia.org/wiki/Test_Driven_Development
http://www.wedotdd.com/ https://medium.com/javascript-scene/5-common-misconceptions-about-tdd-unit-tests-863d5beb3ce9 https://www.codementor.io/blog/software-projects-failure-rate-success-factors-1nqch57orj http://www.mckinsey.com/business-functions/digital-mckinsey/our-insights/delivering-large-scale-it-projects-on-time-on-budget-and-on-value