凝集性から考えるLaravelのmiddleware、routingに書くか? Policyに書くか? by NobleNomad

PHPカンファレンス福岡2024
採択
2024/06/22 17:30〜
Fusicホール
LT(5分)

凝集性から考えるLaravelのmiddleware、routingに書くか? Policyに書くか?

sWlnSBQihsFnfjP NobleNomad sWlnSBQihsFnfjP

▼概要

Laravelでは「運営ユーザのみアクセスできる」などの認可をmiddlewareを使って簡単に定義できます。
定義の仕方も「routingファイルに書く」・「Policyを使う」など様々な用途で使い分けができます。 便利ですよね。

しかし、上のような書き方だと、どうしてもroute側かPolicy側が認可の責務を持つことになってしまいます。
もしかしたらValueObject・Entityを使う設計がされているプロダクトではValueObject・Entityごとに対する操作の認可というアプローチもありなのかもしれません!

このLTでは、ValueObject・Entityごとに対する操作の認可の実際の書き方・書くことでどういうメリットがあるかをお話します!