Resumen
La idea de programación basada en contratos es a primera vista simple. Una operación tiene un conjunto de precondiciones y postcondiciones. Sin embargo, como casi siempre, el diablo está en los detalles. En esta charla, se presentará el estado actual de las propuestas debatidos por un reducido número de miembros del comité ISO C++ sobre la eventual incorporación de la programación basada en contratos a C++. Durante la charla se mencionaran frecuentemente términos como precondición, postcondición, invariante, programación defensiva versus no defensiva, excepciones, análisis estático de código o verificación formal.
J. Daniel García
J. Daniel García es un programador de C++ con 25 años de experiencia. Ha usado el lenguaje en diversos sectores industriales, que van desde la ingeniería civil hasta la medicina. Es miembro del comité ISO de normalización de C++ donde ha realizado contribuciones a C++11 y C++14. También preside el comité español de normalización en Lenguajes de Programación, sus entornos e interfaces de sistema.
Su principal interés es simplificar la vida de los desarrolladores buscando equilibrio entre el rendimiento de las aplicaciones y la facilidad de mantenimiento.
Es profesor titular de Arquitectura de Computadores de la Universidad Carlos III de Madrid. Actualmente dirige el proyecto Europeo REPARA y también lidera la participación de la Universidad Carlos III de Madrid en el proyecto europeo RePhrase, ambos muy relacionados con el lenguaje de programación C++.