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

Я получил сообщение PHPMD, говорящее мне:

остальное никогда не нужно, и вы можете упростить код для работы без других
на этой части кода:

if ($settings == null) {
$settings = new self($arrSettings);
} else {
$settings->fill($arrSettings);
}
$settings->save();

return $settings;

Мой вопрос: как я должен избегать else (). Единственный способ, которым я вижу, — это дублирование $setting->save() и вернуться.

Любая идея?

1

Решение

Вероятно, потому что это может быть переписано как

if ($settings === null) {
$settings = new self; // or new self([]);
}
$settings->fill($arrSettings);
$settings->save();

return $settings;

Но, TBH, все это выглядит как одно большое нарушение SRP, потому что экземпляры классов не должны быть в состоянии создать новые экземпляры самих себя. Это просто не имеет никакого смысла … но опять же, я не «ремесленник».

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]