powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / checkstyle и public final
6 сообщений из 6, страница 1 из 1
checkstyle и public final
    #38485483
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Checkstyle ругается на "public final" поля класса. По сути он против структур данных.
Причём судя по доке выпилить это можно только вместе с контролем на просто public поля.

Кто-нибудь пробовал копнуть глубже- на уровне патчанья исходников, или плагина-фильтра?
Нет времени глубоко погружаться в это дело, но хочется избавиться от ненужного варнинга.

--
Алексей.
...
Рейтинг: 0 / 0
checkstyle и public final
    #38485708
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно ругается, что нет так-то? По сути структуры данных в Java делаются как immutable Java bean. Зачем поля выставлять напрямую. Ни полиморфизма потом на них не сделать, ни логики к ним прикрутить.
...
Рейтинг: 0 / 0
checkstyle и public final
    #38485763
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczПравильно ругается, что нет так-то? По сути структуры данных в Java делаются как immutable Java bean. Зачем поля выставлять напрямую. Ни полиморфизма потом на них не сделать, ни логики к ним прикрутить.

Мне кажется, что это вопрос вкуса. Мне не нравятся лишние геттеры. Ну может и смирюсь :)
Но интересно всё же узнать как можно обойти.
...
Рейтинг: 0 / 0
checkstyle и public final
    #38485790
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominМне кажется, что это вопрос вкуса.

Если вы сами себе небольшой стартап профессионалов высокого уровня. Если вы понимаете что такое Anemic Model и инкапсуляция а значит у вас никогда не будет кода вида Order.person.name, тогда ладно.

Alexey TominМне не нравятся лишние геттеры.
Мне тоже не нравится их наличие в классах. Но как без них дебажить, я ума не приложу. Breakpoint-ы на полях нормально работают?

Alexey TominНо интересно всё же узнать как можно обойти.
Дописать своё правило в checkstyle? :)
...
Рейтинг: 0 / 0
checkstyle и public final
    #38489804
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczAlexey TominМне кажется, что это вопрос вкуса.

Если вы сами себе небольшой стартап профессионалов высокого уровня. Если вы понимаете что такое Anemic Model и инкапсуляция а значит у вас никогда не будет кода вида Order.person.name, тогда ладно.


Ещё раз- есть такой тип данных, как структура. Там нет ни одного метода, кроме конструктора, и все поля public final.
Не понимаю, чем они так плохи, что checkstyle выдаёт _ошибку_ даже, а не предупреждение.

BlazkowiczAlexey TominМне не нравятся лишние геттеры.
Мне тоже не нравится их наличие в классах. Но как без них дебажить, я ума не приложу. Breakpoint-ы на полях нормально работают?

Зачем дебажить доступ к полям структуры? Но брякпоинты на поля в eclipse точно работают (пробовал на изменение), а в IDEA пока не пробовал- не надо было.

BlazkowiczAlexey TominНо интересно всё же узнать как можно обойти.
Дописать своё правило в checkstyle? :)

Новое правило, которое будет делать ту же проверку, кроме public final? Как-то через з..., мне кажется, решение.
...
Рейтинг: 0 / 0
checkstyle и public final
    #38489918
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominЕщё раз- есть такой тип данных, как структура.

Не нужно C подобные практики тащить в Java. Я всё прекрасно понимаю. Но в Java не используются структуры в том виде в котором вы хотите. Зато используются Immutable Beans. Отсюда и подобные правила в check style.

Alexey TominТам нет ни одного метода, кроме конструктора, и все поля public final.

От того что вы 10 раз повторите, checkstyle не изменится.

Alexey TominНе понимаю, чем они так плохи, что checkstyle выдаёт _ошибку_ даже, а не предупреждение.

Тем что они выставляют наружу состояние объекта. В Java нет структур.

Alexey TominЗачем дебажить доступ к полям структуры?

Офигеть. Ну, как зачем? Нужно мне узнать кто её читает в определенный момент.

Alexey TominНовое правило, которое будет делать ту же проверку, кроме public final? Как-то через з..., мне кажется, решение.
У вас есть лучше?
Ну, задайте publicMemberPattern в настройках правила и используйте специальное именование полей в вашей структуре.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / checkstyle и public final
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]