A&I или AccessTransformers?

Версия Minecraft
1.16+
342
33
54
Hi

Как только узнал про @Accessor и @Invoker(Далее A&I), сразу стал их сравнивать с AccessTransformer'ами(Далее AT).

Плюсы по очереди каждого из них которые я выявил лично для себя(мелочи, главный вопрос ниже)

AI&:
  • A&I удобнее и проще(лично мне, так как в AT у меня далеко не всегда подставляется цель(или как это назвать)).
  • A&I универсальны для загрузчиков, а AT разные(AW на фабрик например).

AT:
  • AT могут снимать private и др. с классов и конструкторов(Думаю A&I тоже так могут, но я не знаю как это сделать).
  • Совместимость?(Не уверен).

Ну и главный вопрос - что быстрее?
 
Решение
Ну и главный вопрос - что быстрее?
Аксесс трансформеры по идее должны быть быстрее, тк обращаешься к полю напрямую
Проблем с совместимостью вообще не будет, т.е если ты поставил protected, а другой мод public - будет поставлено последнее

Однако (в теории) вариант с миксинами так же должен быть очень быстрым - метод короткий, полиморфизма нет -> оно хорошо инлайнится (тело метода встраивается в место, от куда он будет вызван, 1 из встроенных оптимизаций jvm)
Ну и главный вопрос - что быстрее?
Аксесс трансформеры по идее должны быть быстрее, тк обращаешься к полю напрямую
Проблем с совместимостью вообще не будет, т.е если ты поставил protected, а другой мод public - будет поставлено последнее

Однако (в теории) вариант с миксинами так же должен быть очень быстрым - метод короткий, полиморфизма нет -> оно хорошо инлайнится (тело метода встраивается в место, от куда он будет вызван, 1 из встроенных оптимизаций jvm)
 
Назад
Сверху