GDG DevFest I: Catan architecture, Pablo Guardiola

@GDGgranada,
Conceptos

  • Clean Code
  • Metodología SOLID: http://www.cmjackson.net/2009/09/04/solid-programming-principles/
    • Single responsability
    • Open/Close
    • Liskov Substitution
    • Interface segregation
    • Dependency Inversion
  • Gran importancia de hacer test al código… ¡test automáticos!
    • Refactorizar código sin hacer tests, no es refactorizar.
  • Alta «mantenibilidad», baja «deuda técnica» (=consecuencia de nuestras malas decisiones)
  • No obstante…¡¡ojo con la «sobre-ingeniería»
  • Arquitectura Hexagonal:
    • http://alistair.cockburn.us/Hexagonal+architecture
    • Distintos actores pueden ejecutar tu aplicación: usuarios, programas autónomos, scripts de test…
    • Puertos + Adaptadores: Puerto = API, Adaptador = Implementación de un puerto
    • En Java los puertos son las interfaces y los adptadores son las implementaciones de la interfaz