interface UserRepository {
findById(int $id): ?User;
save(User $user): void;
}
class SqlUserRepository implements UserRepository { ... }У маленьких CRUD-застосунках Repository — надмірне ускладнення. Виправданий там, де бізнес-логіка складна і потрібна незалежність від джерела даних.