Сравнение структур динамического манипулирования байт-кодом Java

Есть несколько фреймворков для динамической генерации байт-кода, манипулирования и переплетения (BCEL, CGLIB, javassist, ASM, MPS). Я хочу узнать о них, но поскольку у меня не так много времени, чтобы знать все подробности обо всех из них, я хотел бы увидеть своего рода сравнительную таблицу, в которой указаны преимущества и недостатки одного по сравнению с другими, а также объяснение Зачем.

Здесь, в SO, я обнаружил много вопросов с похожими вопросами, и в ответах обычно говорилось «вы можете использовать cglib или ASM», или «javassist лучше, чем cglib», или «BCEL старый и умирает» или «ASM - лучший, потому что дает X и Y». Эти ответы полезны, но не дают полного ответа на вопрос в том объеме, который я хочу, сравнивая их более глубоко и показывая преимущества и недостатки каждого из них.

29
задан rolve 1 March 2016 в 14:58
поделиться