Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
TemDendê: Desenvolvimento PHP a Moda Baiana
Search
Jonata Weber
October 07, 2017
Programming
63
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TemDendê: Desenvolvimento PHP a Moda Baiana
Jonata Weber
October 07, 2017
More Decks by Jonata Weber
See All by Jonata Weber
PHPStan - Analisador Estático
jonataa
0
130
PHP Moderno
jonataa
0
120
Programação Reativa com RxJS
jonataa
0
150
O que esperar de um profissional de TI
jonataa
0
56
A onda agora é função como serviço
jonataa
0
42
Programação Funcional com Acarajé e Dendê
jonataa
0
82
Curso de Programação Funcional com JavaScript
jonataa
0
190
Medindo a Performance de Códigos PHP
jonataa
0
79
5 motivos para você participar de eventos
jonataa
0
160
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
280
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
130
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
120
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
350
Java 27新機能 / Java 27 new features
kishida
2
170
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
220
What We Talk About When We Talk About XP
m_seki
2
680
Family mrubyの進捗
kishima
1
130
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
260
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
540
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.1k
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
170
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
770
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Thoughts on Productivity
jonyablonski
76
5.4k
Amusing Abliteration
ianozsvald
1
310
KATA
mclloyd
PRO
35
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Deep Space Network (abreviated)
tonyrice
0
320
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
480
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.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