В программировании использую разные виды проектирования кода. Один из таких видов проектирования называется «SOLID». Используя данный способ проектирования можно создать такую систему, которую будет легко поддерживать и расширять.
«SOLID» — это аббревиатура которая расшифровывается в побуквенной форме. Чтобы легче понимать и запоминать значение каждой буквы, сейчас мы разберем только первую букву S.
Буква «S» в аббревиатуре означает «Single Responsible Principe» (или «SRP»), что переводится как «Принцип единой ответственности». Это значит что модуль должен отвечать за что-то одно. Другими словами, например, ваш класс (или иной модуль) должен делать только что-то одно (а не всё подряд).
Пример плохого кода:
public function update(Request $request): string
{
$validated = $request->validate([
'title' => 'required|max:255',
'events' => 'required|array:date,type'
]);
foreach ($request->events as $event) {
$date = $this->carbon->parse($event['date'])->toString();
$this->logger->log('Update event ' . $date . ' :: ' . $);
}
$this->event->updateGeneralEvent($request->validated());
return back();
}
Пример хорошего кода:
public function update(UpdateRequest $request): string
{
$this->logService->logEvents($request->events);
$this->event->updateGeneralEvent($request->validated());
return back();
}
В целом на этом всё по первой части данной аббревиатуры. Кстати, в статье 5 советов по написанию кода Laravel, мы писали тот же самый пункт (принцип единой ответственности), если вам интересно, то там вы можете также с ним познакомиться, со всеми примерами.