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
100
PHP Moderno
jonataa
0
93
Programação Reativa com RxJS
jonataa
0
120
O que esperar de um profissional de TI
jonataa
0
35
A onda agora é função como serviço
jonataa
0
31
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
59
5 motivos para você participar de eventos
jonataa
0
140
Other Decks in Programming
See All in Programming
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
1
640
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
570
Go Code Generation at newmo / 2024-08-27 #newmo_layerx_go
genkey6
0
540
座談会 「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」
shiz
4
8.5k
労務ドメインを快適に開発する方法 / How to Comfortably Develop in the Labor Domain
yuki21
1
250
Appleの新しいプライバシー要件対応: ノーコードアプリ プラットフォームの実践事例
nao_randd
1
460
いつか使える ObjectSpace / Maybe useful ObjectSpace
euglena1215
2
120
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
610
Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
220
REXML改善のその後
naitoh
0
160
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
230
GoのIteratorに詳しくなってしまう
inatonix
1
190
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
425
64k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
The Mythical Team-Month
searls
218
43k
Learning to Love Humans: Emotional Interface Design
aarron
270
40k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
190
16k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
Pencils Down: Stop Designing & Start Developing
hursman
118
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The Brand Is Dead. Long Live the Brand.
mthomps
53
37k
Speed Design
sergeychernyshev
18
410
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