Включение Cofoja в проект может быть по-разному. Но лучше придерживаться того, что предлагают авторы, используя аргумент jvm -javaagent при запуске приложения.
На проект пока не повлиял сильно, т.к. не все разработчики придерживаются Design by Contracts. Грамотность разработчиков надо повышать, т.е. разобрать примеры использования и найти соглашение применения Cofoja, т.к. кто-то хочет использовать Cofoja как assert’ы c отключениями на prod, а кто-то считает, что Design by Contracts должен делать проверки в любом случае.
В большей степени меня интересуют улучшения от внедрения проектирования по-контракту вообще, нежели этой конкретной библиотеки.
Понятно, что многие все эти книги и статьи читали, и слышали, что это «хорошо и правильно», но меня инетресует именно прагматическая сторона вопроса.
Cofoja: Практичная библиотека для контрактного программирования. Часть 1