mejor framework-pythonoo-solid
DESCRIPTION
Presentación para PyConES 2013 (23/11/2013) Madrid Python OO SOLIDTRANSCRIPT
![Page 1: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/1.jpg)
Mejor FrameworkPythonOO + SOLID
Vivir sin Frameworks
![Page 2: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/2.jpg)
Presentaciones
![Page 3: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/3.jpg)
Alea Soluciones Bifer Team
![Page 4: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/4.jpg)
@eferro@pasku1 @apa42
@nestorsalceda
![Page 5: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/5.jpg)
Un placer...
![Page 6: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/6.jpg)
¿Qué es un framework?
Django
Rails
Grails
Spring
AppEngine
Zope/Plone
![Page 7: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/7.jpg)
¿Qué ventajas nos aporta?
Aporta UNA solución (única)
Estructura tu aplicación
![Page 8: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/8.jpg)
¿Qué inconvenientes tiene?
Crea GRAN dependencia
Limita flexibilidad negocio
Obsolescencia / Moda ???
![Page 9: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/9.jpg)
![Page 10: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/10.jpg)
Desarrollo ÁgilCrecimiento Orgánico
Arquitectura Emergente
![Page 11: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/11.jpg)
![Page 12: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/12.jpg)
![Page 13: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/13.jpg)
![Page 14: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/14.jpg)
Lo único seguroTodo Cambia / Evoluciona
![Page 15: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/15.jpg)
Existe una alternativa
![Page 16: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/16.jpg)
Centrarnos en el Negocioy
Desarrollo ágil / evolutivo
![Page 17: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/17.jpg)
Poder postponer decisiones
![Page 18: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/18.jpg)
Tomar decisiones conscientemente
![Page 19: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/19.jpg)
![Page 20: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/20.jpg)
![Page 21: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/21.jpg)
![Page 22: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/22.jpg)
¿Cómo desarrollamos negocio?DDD Domain Driven Design
Clean Code / S.O.L.I.D
TDD Test Driven Development
![Page 23: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/23.jpg)
Pure Object Oriented Python
Independiente de IO (No net, No BD, No files, …)
![Page 24: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/24.jpg)
![Page 25: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/25.jpg)
¿Cómo hacemos el resto?
![Page 26: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/26.jpg)
![Page 27: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/27.jpg)
![Page 28: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/28.jpg)
![Page 29: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/29.jpg)
![Page 30: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/30.jpg)
Infraestructura y EntregaUsamos las abstracciones sobre libs
Clean Code / S.O.L.I.D
TDD Test Driven Development
![Page 31: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/31.jpg)
Conclusiones
![Page 32: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/32.jpg)
• Los frameworks son una decisión muy importante
• Las decisiones tienen que ser conscientes
![Page 33: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/33.jpg)
• Hacer un sistema que evolucione con las necesidades del cliente• Postponer decisiones
• Aplicar distintas soluciones técnicas
Nuestra forma de trabajo y arquitectura debe permitirnos:
![Page 34: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/34.jpg)
Que permiten centrarse en negocioQue facilitan el desarrollo ágilQue evolucionan a largo plazo
Que evolucionan a buena velocidad
Existen alternativas (Reales)
![Page 35: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/35.jpg)
![Page 36: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/36.jpg)
Referencias
DDD
http://en.wikipedia.org/wiki/Behavior-driven_development
TDD
http://en.wikipedia.org/wiki/Test-driven_development
Hexagonal Architecture
http://alistair.cockburn.us/Hexagonal+architecture
Clean Architecture
http://blog.8thlight.com/uncle-bob/2012/08/13/the-clean-architecture.html
![Page 37: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/37.jpg)
![Page 38: Mejor framework-pythonoo-solid](https://reader033.vdocumento.com/reader033/viewer/2022052909/55981fe01a28ab95648b4689/html5/thumbnails/38.jpg)
Gracias !!!