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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
aitortxu
November 28, 2019
Programming
720
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Buenas prácticas, ¿Por qué son buenas?
aitortxu
November 28, 2019
More Decks by aitortxu
See All by aitortxu
pamplona_scraft.pdf
aitortxu
0
96
En mi equipo funciona pero no sé por qué
aitortxu
0
330
Deuda técnica ¿Podemos pagar los plazos?
aitortxu
0
190
Fallando con Grails
aitortxu
1
3.1k
Probando con Grails
aitortxu
0
110
Katayunos
aitortxu
1
240
Other Decks in Programming
See All in Programming
Oxcを導入して開発体験が向上した話
yug1224
4
330
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
600
JavaDoc 再入門
nagise
1
380
Oxlintのカスタムルールの現況
syumai
6
1.1k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
560
Claspは野良GASの夢をみるか
takter00
0
200
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
270
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
730
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.4k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
420
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
380
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
130
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
150
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
So, you think you're a good person
axbom
PRO
2
2.1k
The Pragmatic Product Professional
lauravandoore
37
7.3k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
440
Building Applications with DynamoDB
mza
96
7.1k
Docker and Python
trallard
47
3.9k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
170
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
340
How to Talk to Developers About Accessibility
jct
2
240
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
320
The Art of Programming - Codeland 2020
erikaheidi
57
14k
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