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
Buenas prácticas, ¿Por qué son buenas?
Search
aitortxu
November 28, 2019
Programming
0
660
Buenas prácticas, ¿Por qué son buenas?
aitortxu
November 28, 2019
Tweet
Share
More Decks by aitortxu
See All by aitortxu
pamplona_scraft.pdf
aitortxu
0
93
En mi equipo funciona pero no sé por qué
aitortxu
0
330
Deuda técnica ¿Podemos pagar los plazos?
aitortxu
0
180
Fallando con Grails
aitortxu
1
3k
Probando con Grails
aitortxu
0
110
Katayunos
aitortxu
1
220
Other Decks in Programming
See All in Programming
CSC307 Lecture 01
javiergs
PRO
0
680
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
440
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5.9k
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
190
Package Management Learnings from Homebrew
mikemcquaid
0
180
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.8k
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
180
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
0
220
Oxlintはいいぞ
yug1224
5
1.2k
Architectural Extensions
denyspoltorak
0
260
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
180
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Facilitating Awesome Meetings
lara
57
6.7k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
240
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
720
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Paper Plane
katiecoart
PRO
0
46k
A Soul's Torment
seathinner
5
2.2k
Practical Orchestrator
shlominoach
191
11k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
820
Transcript
Buenas prácticas ¿Por qué son buenas? Aitor Alzola @Aitortxu foto
ponente Software crafters
Buenas prácticas ¿Por qué son buenas?
¿Qué es una buena práctica?
None
Negocio + Tecnología
Nuestro Contexto
None
Desarrollo en cascada vs Desarrollo ágil
https://martinfowler.com/bliki/WaterfallProcess.html
https://martinfowler.com/bliki/WaterfallProcess.html
Manifiesto por el Desarrollo Ágil de Software
Xtreme Programming
https://en.wikipedia.org/wiki/Extreme_programming#/media/File:Extreme_Programming.svg
Iterativo e incremental
None
None
Testing automático
Testing automático Product vs tests 0 25 50 75 100
1 2 3 Product Testing
Testing automático Product vs tests 0 35 70 105 140
1 2 3 Product Testing
Testing automático Product vs tests 0 40 80 120 160
1 2 3 Product Testing
Testing automático Product vs tests 0 45 90 135 180
1 2 3 Product Testing
Testing automático Product vs tests 0 50 100 150 200
1 2 3 Product Testing
Testing automático Product vs tests 0 75 150 225 300
1 2 3 Product Testing
0 22,5 45 67,5 90 1 2 3 4 5
6 7 8 9 10 Manual vs Automático
None
None
None
None
None
25.000 pruebas automáticas 15.000 pruebas interpretación 12.000 e2e metalingua 300
e2e sdk
Testing automático
Testing automático
None
Re-fac-tor To rewrite existing source code in order to improve
its readability, reusability or structure without affecting its meaning or behaviour.
Re-fac-tor Sin pruebas automáticas
Re-fac-tor Cambiar y rezar
Complejidad accidental VS Complejidad intrínseca
Integración continua
Integración continua
Integración continua Trunk-based Short-time branches …
Integración continua No nos liamos
Continuous Integración
Build Test Deploy Continuous Integración
Continuous Delivery
Continuous Deployment
Continuous Deployment Automatización Schema migration Infrastructure as code Automatización de
despliegue Testing integrado en el pipeline de entrega
Calidad de código
http://commadot.com/
Propiedad colectiva del código
Code review
https://www.semanticscholar.org/paper/Object-oriented-inspection-in-the-face-of-delocali-Dunsmore-Roper/ee2d1d5d592735bff88e61e5e05c74324b8f1e36
Pair programming
None
Inmutability
Métodos que devuelven el resultado de lo que hacen
Métodos que hacen lo que dicen
https://www.teepublic.com/es-mx/pegatina/1693236-kiss-keep-it-simple-stupid
http://www.dckap.com/blog/wp-content/uploads/2018/06/SOLID-PNG.png
Passes the tests. Reveals intention No duplication (DRY) Fewest elements
Four rules of Software design
Sonar
MicroServicios
https://martinfowler.com/articles/microservices/images/sketch.png
https://joshiarati12.files.wordpress.com/2016/04/cesymcwwoaerxvo.jpg?w=663
Documentación
None
Mejora continua
None
Alignment
None
¡Gracias! ¿Preguntas? @Aitortxu