0

したがって、認証部分を含む MVC フレームワークがあります。以前は巨大な静的クラスだったので、あらゆる種類の楽しい API 破壊的変更を経てきました。私はついに、それが「本当に」どれだけ抽象的である必要があるかについて、突破口を見つけました。

認証には 3 つの部分があるようです

  1. ユーザー名、パスワード ハッシュなどを保存および読み取るためのデータベース インターフェース
  2. 適切なハッシュを処理し、ログイン トークンを作成し、それらを検証する「ビジネス」ロジック
  3. Cookie を処理する「公開」層、またはログイン トークンを格納する「ユーザー側の永続化」層。これは通常、Cookie ですが、HTTP 基本認証である可能性もありますが、

とにかく、すべてを素晴らしいものにし、これらの 3 つのレイヤーを個別に単体テストするという目標で、これらの 3 つの部分のインターフェイスを作成しています。

  1. IUserStore と ISessionStore
  2. IAuthメカニズム
  3. ????

ユーザー側の永続化レイヤーにとってまったく意味のあるインターフェース名を付けるのに助けが必要です。良い名前を思いつくのを手伝ってくれる人はいますか?また、実装者の名前のボーナス ポイント (つまり、Cookie レイヤー クラスと HTTP 基本認証クラス)

4

1 に答える 1

1

名前は、説明のすぐ後に続く必要があります。あなたの場合、すでにすべてを説明しているので、あとは最も重要な部分を選択するだけです。私の見解では、3 番目の部分で最も重要なことは、Cookie やログイン トークンなどの認証情報が保持されることです。IAuthPersisterでは、それをまたはと呼んでみませんIAuthenticationPersisterか? この場合の実装者の名前は、層とその下に実装されたメソッドの両方を表す 、 などになりますCookieAuthPersisterHttpBasicAuthPersister

于 2013-02-20T07:30:30.243 に答える