Использование дизайна по контракту в Python

Я собираюсь начать использовать DBC в большом количестве проектов на основе Python на работе, и мне интересно, какой опыт у других был с этим. Пока что мое исследование показало следующее:

  • http://www.python.org/dev/peps/pep-0316/ - PEP 316, который должен стандартизировать дизайн по контракту для Python, который был отложен . Этот PEP предлагает использовать строки документации.
  • http://www.wayforward.net/pycontract/ - Контракты для Python. Кажется, это полная, но не поддерживаемая структура, использующая строки документации.
  • http://www.nongnu.org/pydbc/ - PyDBC, реализующий контракты с использованием метаклассов. Также не обслуживается в течение нескольких лет.

Мои вопросы: использовали ли вы DBC с Python для зрелого производственного кода? Насколько хорошо это сработало / стоило ли затраченных усилий? Какие инструменты вы бы порекомендовали?

42
задан ipartola 19 December 2011 в 15:23
поделиться