Какие инструменты вы используете для проектирования по контракту?
Раньше я использовал Microsoft CodeContracts в течение трех недель, и теперь половина моего кода - это просто контракты. У меня есть десятки недоказанных мест, я не могу использовать проверку времени выполнения, потому что перезапись IL предотвращает показ инструмента покрытия, и время компиляции менее приемлемо.
Мне это не нравится. И, кажется, сейчас самое время обратиться за помощью. Какие инструменты вы используете для ваших обычных разработок?
2 ответа
SpeC# - я не пробовал сам, но я слышал, это довольно круто. На нем есть хороший подкаст DotNetRocks, который хорошо подходит для работы.
Я использую Visual Studio 2010 с кодами контрактов. И я ежедневно работаю с решением, в котором есть 20 крупных проектов. Да, проверки во время выполнения замедляют время компиляции. Но я принимаю штраф, чтобы добиться более надежного кода. Я заметил, что ваше сообщение было опубликовано в январе 2010 года. Прошло более года, и вы можете обнаружить, что последний выпуск переписывателя Code Contracts несколько быстрее. Но не ожидайте чуда там.
Кроме того, они улучшили то, как покрытие кода сообщает о коде, где используются контракты кода. Так что, если это беспокоит вас больше всего, обязательно попробуйте еще раз с последней версией.