Skip to content

Instantly share code, notes, and snippets.

@luque
Last active July 17, 2017 11:15
Show Gist options
  • Save luque/e11f16880bd2fb21e57ef9905bcc5be7 to your computer and use it in GitHub Desktop.
Save luque/e11f16880bd2fb21e57ef9905bcc5be7 to your computer and use it in GitHub Desktop.
Notes for Domain-Specific Tools talk
* Títulos potenciales:
- Building Domain-driven Development Tools
- Agile Domain-aware Tools to craft (design, assess, learn, visualize, etc.) your code
- Moldable tools to craft your code
* Descripción:
Las herramientas de desarrollo tienen un impacto sobre los hábitos mentales de los desarrolladores de software,
afectando directamente a cómo construimos, percibimos y razonamos acerca del software e incluso limitando el
rango de las potenciales soluciones que podemos alcanzar.
Incluso cuando siguiendo aproximaciones como Domain-Driven Design (DDD) los desarrolladores conseguimos diseñar las
aplicaciones de software en términos de abstracciones del dominio, no podremos aprovechar todo el potencial de estas
abstracciones mientras nuestras herramientas de desarrollo no incorporen y sean "conscientes" de las abstracciones
específicas de cada dominio.
Los IDEs actuales manejan de una forma genérica las aplicaciones, independientemente de que modelen dominios
muy diferentes. Existe un "gap" evidente entre el modelo mental basado en abstracciones del dominio en el que los
desarrolladores deberíamos trabajar y el modelo genérico y de más bajo nivel al que nos obligan nuestras herramientas.
En esta charla presentaremos, basándonos en demostraciones prácticas y usando el entorno de programación Pharo (aunque
los conceptos serán genéricos), cómo podemos escapar a las limitaciones de nuestras herramientas y crear de manera ágil
y con un coste limitado, extensiones específicas del dominio de nuestra aplicación.
Adaptaremos nuestras herramientas, como hace todo buen artesano que se precie de su trabajo, con el fin de poder razonar,
visualizar y comunicar nuestros sistemas de software directamente en términos de nuestras abstracciones de dominio.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment