Хабр Курсы для бэкендеров
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!

Мощно. Ещё в копилку альтернативных способов можно добавить использование IronPython, в котором как и в обычном питоне поддерживается создание динамических классов, в которых во время исполнения можно изменять состав полей, методов, а также их реализации. Но работает поверх DLR, так что использовать в целях повышения производительности не выйдет.
Генерация типов в Runtime