Проверки времени компиляции IronPython против библиотек CLR?

Я знаю, что IronPython является динамически типизированным языком, поэтому то, что я спрашиваю, звучит довольно глупо, но можно ли что-то сделать со скриптом IronPython, чтобы убедиться, что изменение библиотек CLR, на которые он ссылается, не приведет к ошибке времени выполнения, когда скрипт выполняется?

Причина, по которой я спрашиваю, состоит в том, что я написал библиотеку, на которую ссылаются скрипты IronPython в C#, и я хочу узнать, не нарушил ли я какой-либо из интерфейсов, используемых скриптами IronPhon, когда я меняю библиотеку C#. Это легко сделать с другим проектом C#, просто скомпилировав код и увидев ошибки компиляции, но, похоже, это не работает при компиляции скриптов IronPython.

Есть идеи?

2 ответа

Решение

Нет, во время компиляции невозможно статически проверить, что изменения интерфейса не повредили ваш код IronPython. Это природа динамических языков. Такие ошибки вместо этого представлены во время выполнения

Хороший набор быстродействующих модульных тестов будет хорошей альтернативой проверке времени компиляции.

Другие вопросы по тегам