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
58
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
120
PHP Moderno
jonataa
0
110
Programação Reativa com RxJS
jonataa
0
140
O que esperar de um profissional de TI
jonataa
0
42
A onda agora é função como serviço
jonataa
0
33
Programação Funcional com Acarajé e Dendê
jonataa
0
60
Curso de Programação Funcional com JavaScript
jonataa
0
180
Medindo a Performance de Códigos PHP
jonataa
0
74
5 motivos para você participar de eventos
jonataa
0
150
Other Decks in Programming
See All in Programming
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
310
猫の手も借りたい!ので AIエージェント猫を作って社内に放した話 Claude Code × Container Lambda の Slack Bot "DevNeko"
naramomi7
0
240
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
14
7.9k
あなたはユーザーではない #PdENight
kajitack
4
300
TipKitTips
ktcryomm
0
150
CSC307 Lecture 13
javiergs
PRO
0
310
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
330
Unity6.3 AudioUpdate
cova8bitdots
0
110
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
290
文字コードの話
qnighy
43
17k
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
160
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
200
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
380
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
310
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
Google's AI Overviews - The New Search
badams
0
930
The Mindset for Success: Future Career Progression
greggifford
PRO
0
270
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
400
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
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