ЧИСТАЯ АРХИТЕКТУРА PHP

Чистая архитектура - это набор принципов и практик, созданных Робертом Мартином (также известным как «Дядюшка Боб»). Она ориентирована на создание гибких, расширяемых и тестируемых приложений.

Главным принципом чистой архитектуры является разделение кода на слои, каждый из которых отвечает за конкретную область функциональности. Слои обмениваются данными друг с другом через строго определенные интерфейсы, что позволяет избегать проблем с зависимостями и способствует улучшению тестируемости.

Пример реализации чистой архитектуры на PHP:

namespace MyApp\Web\Controller;
use MyApp\Core\Request;
use MyApp\Core\Response;
use MyApp\Domain\User\Repository\UserRepositoryInterface;
class UserController {
private $userRepository;
public function __construct(UserRepositoryInterface $userRepository) {
$this->userRepository = $userRepository;
}
public function index(Request $request): Response
{
$users = $this->userRepository->findAll();
return new Response('user/index.html.twig', ['users' => $users]);
}
}

Выше приведен пример контроллера, который основан на чистой архитектуре. Контроллер не имеет прямого доступа к базе данных, а взаимодействует с ней через интерфейс UserRepositoryInterface. Это позволяет изменять реализацию UserRepositoryInterface без изменения кода контроллера.

Чистая архитектура и Domain-Driven Design

Почему мы всегда недовольны своим языком? / Перевод вступления легендарной лекции Мартина

PHP-линч #10 • myclabs/deep-copy • чистая архитектура

Создаем масштабируемую архитектуру

LARAVEL + Clean Architecture // Роман Постников

#Backend Денис Цветцих. Чистая архитектура на практике

Реклама
Новое
Реклама