gtjbtits / da

Developer's Agreement
MIT License
0 stars 0 forks source link

Раздел Lombok #3

Open gtjbtits opened 3 years ago

gtjbtits commented 3 years ago

Создать раздел в wiki, описать применяемые нами best practices с примерами

Тезисы из истории обсуждений:

1.

ломбок всё еще не умеет решать рекурсивные ToString. способов решения (кроме как Exclude) нет. т.е выходит: @Getter @Setter @EqualsAndHashCode(of = "id") либо @Data @ToString(onlyExplicitlyIncluded = true) ps @Builder @NoArgs добавлять по желанию

имхо, первый вариант более надежный и контролируемый. если все согласны, можно внести в кодстайл

2.

Еще раз подумать, нужен ли нам @ToString, который тянет цепочку LAZY-зависимостей? Что будет, если не будет сессии с БД? Не будет ли это вызывать нежелательную нагрузку на БД: кто-то хотел залогировать пользователя в userService.findOne(), а залогировал половину БД из его зависимостей

gtjbtits commented 3 years ago

@VladInnotech эта тебе

gtjbtits commented 3 years ago

@VladInnotech не могу на тебя назначить, потому что ты еще не принял приглашение в проект

gtjbtits commented 3 years ago

@RequiredArgsConstructor разве не достаточно для бинов? Почему мы везде пишем @AllArgsConstructor? Это разве не оверкилл?

VladInnotech commented 3 years ago

@Log или @Log4j ? да, SneakyThrows использовать тоже не хочу, ну разве что в крайних случаях каких возможно и небыло еще в проекте. накидайте еще моментов по статье /предложений использования или мб вообще отсутствующих глав.