Mejor framework-pythonoo-solid

38
Mejor Framework PythonOO + SOLID Vivir sin Frameworks

description

Presentación para PyConES 2013 (23/11/2013) Madrid Python OO SOLID

Transcript of Mejor framework-pythonoo-solid

Page 1: Mejor framework-pythonoo-solid

Mejor FrameworkPythonOO + SOLID

Vivir sin Frameworks

Page 2: Mejor framework-pythonoo-solid

Presentaciones

Page 3: Mejor framework-pythonoo-solid

Alea Soluciones Bifer Team

Page 4: Mejor framework-pythonoo-solid

@eferro@pasku1 @apa42

@nestorsalceda

Page 5: Mejor framework-pythonoo-solid

Un placer...

Page 6: Mejor framework-pythonoo-solid

¿Qué es un framework?

Django

Rails

Grails

Spring

AppEngine

Zope/Plone

Page 7: Mejor framework-pythonoo-solid

¿Qué ventajas nos aporta?

Aporta UNA solución (única)

Estructura tu aplicación

Page 8: Mejor framework-pythonoo-solid

¿Qué inconvenientes tiene?

Crea GRAN dependencia

Limita flexibilidad negocio

Obsolescencia / Moda ???

Page 9: Mejor framework-pythonoo-solid
Page 10: Mejor framework-pythonoo-solid

Desarrollo ÁgilCrecimiento Orgánico

Arquitectura Emergente

Page 11: Mejor framework-pythonoo-solid
Page 12: Mejor framework-pythonoo-solid
Page 13: Mejor framework-pythonoo-solid
Page 14: Mejor framework-pythonoo-solid

Lo único seguroTodo Cambia / Evoluciona

Page 15: Mejor framework-pythonoo-solid

Existe una alternativa

Page 16: Mejor framework-pythonoo-solid

Centrarnos en el Negocioy

Desarrollo ágil / evolutivo

Page 17: Mejor framework-pythonoo-solid

Poder postponer decisiones

Page 18: Mejor framework-pythonoo-solid

Tomar decisiones conscientemente

Page 19: Mejor framework-pythonoo-solid
Page 20: Mejor framework-pythonoo-solid
Page 21: Mejor framework-pythonoo-solid
Page 22: Mejor framework-pythonoo-solid

¿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

Pure Object Oriented Python

Independiente de IO (No net, No BD, No files, …)

Page 24: Mejor framework-pythonoo-solid
Page 25: Mejor framework-pythonoo-solid

¿Cómo hacemos el resto?

Page 26: Mejor framework-pythonoo-solid
Page 27: Mejor framework-pythonoo-solid
Page 28: Mejor framework-pythonoo-solid
Page 29: Mejor framework-pythonoo-solid
Page 30: Mejor framework-pythonoo-solid

Infraestructura y EntregaUsamos las abstracciones sobre libs

Clean Code / S.O.L.I.D

TDD Test Driven Development

Page 31: Mejor framework-pythonoo-solid

Conclusiones

Page 32: Mejor framework-pythonoo-solid

• Los frameworks son una decisión muy importante

• Las decisiones tienen que ser conscientes

Page 33: Mejor framework-pythonoo-solid

• 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

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
Page 36: Mejor framework-pythonoo-solid

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
Page 38: Mejor framework-pythonoo-solid

Gracias !!!