Сильно ли влияет RetentionPolicy?

bonenaut7

Попрошайка
1,426
31
261
Сильно ли влияет RetentionPolicy на работу или нет?
хочу себе работу облегчить да не знаю вот плохо так делать или нет
1579258194259.png
 
А зачем тебе такая аннотация? Что-то мне подсказывает, что в твоём случае можно интерфейсом обойтись
 
А если ему нужно пометить че-то не свое?
 
А как он аннотацию повесит на "че-то не свое"? По-моему, @jopi эту аннотацию хочет на классы вешать.
 
Дурню говоришь, если рил для своих предметов - делай интерфейс.
интерфейс с абстрактным методом
Они как бы могут быть дефолтные с реализацией

чем меньше кода тем красивее код
Ну канешна, намного красивее рефлексией доставать аннотацию(еще и намного медленнее), чем просто сделать obj instanceof YourInterface 💁‍♀️ 🌚
 
@Dysphoria честно? задолбали интерфейсы, и удобнее аннотации когда нужно 1-2 значения сделать на 1 класс а не мультипредмет
1579382173622.png
( да ето лавамод c: )(весь код переписываю)
 
В том, что у тебя много интерфейсов скорее всего виноваты две вещи: качественные характеристики решаемых задач и неумение обобщать абстракции.
С ходу погу предположить,
что вот эти два интерфейса можно было бы описать единым образом
1579382911982.png
а вот эти интерфейсы скорее всего можно заинлайнить
1579382942969.png
скорее всего, только итемы имеют тултип, поэтому можно слить этот интерфейс в базовый интерфейс итема и сделать реализацию по умолчанию
1579382988392.png
1579383055834.png
 
Ну хз, но ты делаешь неправильно, но дело твое
лавамод это огрызок, который деус по сути слепил из своего кода, кода со stackoverflow, кода с туториалов, и кода с закрытых модов по типу того же ThaumCraft(сурсов которых нету в открытом доступе, я не нашел :C)
 
@hohserg1 первые 2 отличаются тем что первый для всех идет, а второй идет для аксессуара который будет дополнительно рендерится,
далее 3 я не разбирался еще, там его код, тултип вообще вроде не используется(удолю), фаст райт клик это вообще отдельная тема на оскар, используется в тикхандлере, евентхандлере и классе предмета ради того что-бы использовать предмет по бинду...
genius, не хочется вообще обсирать деуса но слишком много чепухи как по мне он делает, ну а поскольку я просто переписываю его, будет интересно взглянуть до и после.
А их много потому-что я делаю максимальную простоту в добавлении каких то предметов и работы с ними, так реально легче
 
Я понимаю, что они отличаются, но их наверняка можно описать единым образом, если они о близких вещах

Если тебе не нравится код - то рефакторь его или переписывай с нуля, других способов избавиться от говнокода я не знаю. Нытье о легаси-коде должен слышать заказчик или начальник, а не форумчане)

По вопросу: сами аннотации на производительность не повлияют, однако работать с ними придется через рефлексию, а это дольше, чем просто вызвать метод
 
код предмета с интерфейсом
1579366739338.png
Нолики и false ты вполне можешь спрятать, используя default метод в интерфейсе. Просто переопределяешь только нужные методы и кода в классе предмета сразу станет меньше. Аннотация для твоей задачи смотрится дико.
 
Я понимаю, что они отличаются, но их наверняка можно описать единым образом, если они о близких вещах

Если тебе не нравится код - то рефакторь его или переписывай с нуля, других способов избавиться от говнокода я не знаю. Нытье о легаси-коде должен слышать заказчик или начальник, а не форумчане)

По вопросу: сами аннотации на производительность не повлияют, однако работать с ними придется через рефлексию, а это дольше, чем просто вызвать метод
Я и переписываю с 0 код, пока участками, ибо так легче(ну тоесть по типам там блоки и предметы и тд)
ну а чистый код просто мне прям уляля, красиво и мне нравится да и получается что я так скилл прокачиваю свой говнокодинга
а аннотации я вызываю типо stackObject.getItem().getClass.getAnnotation(MyAnnotationClass.class) != null и если ненул
то тогда stackObject.getItem().getClass.getAnnotation(MyAnnotationClass.class).myParam()

@Plasticable хм, спасибо, обязательно так сделаю, не подумал чет...
 
Назад
Сверху