c#-4.0 design-by-contract spec#

c# 4.0 - ¿Es Spec#lo suficientemente estable como para usar?



c#-4.0 design-by-contract (1)

Supongo que depende de lo que quieres decir con "estable". Hay dos interpretaciones posibles:

  1. "no estrellarse"
  2. "no cambia"

No sé sobre el # 1, pero si te refieres al # 2, entonces, bueno, Spec # ha sido abandonado y ya no se está desarrollando, así que es probable que sea tan estable como puedas llegar.

Las técnicas y herramientas que se usaron en Spec # (la herramienta de análisis estático llamada Boogie y therorem prover / constraint solver Z3 ) ahora son parte de una nueva biblioteca llamada Code Contracts for .NET . El resultado de ser una biblioteca es que Code Contracts funcionará para cualquier lenguaje .NET: C #, VB.NET, F #, Ruby, Python, JavaScript, Lisp, Smalltalk, Boo, lo que sea. La desventaja es que no obtiene integración de idioma, por lo que no hay una buena sintaxis para los contratos.

Code Contracts for .NET formará parte de .NET 4.0 / Visual Studio 2010, pero desafortunadamente no habrá compatibilidad con DbC en ninguno de los idiomas de Microsoft.

¿Alguien aquí usa Spec # regularmente? Me gustaría saber si es estable y lo suficientemente potente antes de que empiece a usarlo en todas partes. Parece que la sintaxis está influyendo en c # 4.0, que con suerte facilitará la actualización una vez que se haya lanzado 4.0. ¿Pensamientos?