-
Коллекции, которые возвращаются из метода через
return
, следует обернуть в иммутабельную обёртку перед передачей.Примеры обёрток:
List.copyOf(someItems);
someStream.collect(Collectors.toUnmodifiableList())
-
Поля класса должны быть финализированы.
-
С моделями и DTO работаем через builder, потому что он создаёт новый экземпляр с изменёнными полями.