Una de las formas más interesantes de desacoplar código, vistas fundamentalmente, usando un framework MV* tipo backbone es aprender a usar correctamente los eventos y patrones asociados. Observer (pub/sub), Event Aggregator, Mediator, …
La mejor lectura al respecto que he encontrado es este post de Derick Bailey (creador de MarionetteJS), donde de forma muy ilustrativa examina distintas opciones finalizando con como hacerlo con eventos. Es recomendable también leer los comentarios, donde Derick responde a varias dudas de los lectores.
La sección sobre Eventos de Developing Backbone Applications explica bien como usar los eventos en general en backbone y esta otra sección revisita el post de Derick exponiendo la diferencia entre Event Aggregator y Mediator.
Pero para trabajar con Eventos de forma correcta además de los patrones y las especifidades de backbone es necesario conocer algunas técnicas y características de javascript relacionadas con el contexto. La siguiente selección de artículos puede ahorrarte un par de horas de quebraderos de cabeza:
- Primero es importante conocer a que hace referencia this en cada caso
- Y en este algo algo viejo (anterior a que bind fuera un estándar) pero todavía ilustrativo artículo explican los problemas del binding loss
- La documentación del método bind y algún ejemplo de uso, también son de interés.
- Y trabajando con underscore / backbone es fundamental conocer y saber usar _.bind y _.bindAll
- Y ya como extra, un artículo sobre partial application