Send to your Kindle *** [[:/ユースケースで何を返すかは別途指定]] [#z6538876] RIGHT:[[:t/ユースケース]] [[:t/Web]] [[:t/Wiki]] [[:t/権限]] 何をするかを表すクラス。利用者はこれを指定することでシステムを操作する。 権限判定を行なうのはここ。独自の権限判定を要する場合はユースケースを分ける必要があるということ。 PukiWikiのcmd/pluginにあたるものがユースケース。MediaWikiでならaction. 実装は[[X/Usecase]]. MVCのController(コントローラー)クラス。 自身にあったMVCのViewクラスを呼ぶ。 %%ユースケース名にはステップ番号が付く。''register_user.3''など。%% ビューを呼ぶのはGETリクエストのみ。他のサーバー側に副作用を及ぼすリクエストにはビューを呼ぶ代わりにリダイレクト。副作用を与えずにビューを呼ぶだけのユースケースにリダイレクトする。一般的なリロード対策。 ---- #contents *** %%ステップ分割%% [#f098c9cb] %%1回のリクエストで終わらないユースケースは複数ステップで構成。ステップを進むか他のユースケースに移るかはリクエスト次第。ということはWikiに書かれているリンク次第。%% → クライアント側だけで対処するので、ステップ分割はしない。REST APIアクセスと、クライアント側コードを返すケースだけ。 ***ユースケースとビュー [#k45ee21e] ユースケースはMVCのController. ビューはMVCのView. ビューを呼ばないユースケース(のステップ)と、ビューを呼ぶユースケース(のステップ)。どれをどういう順番で呼ぶかはリクエスト次第。 ユースケース+ステップで最上位のコードが決まる。 例えば、編集ステップ1…編集フォーム生成、編集ステップ2…投稿受け付け・ビューなし、編集ステップ3…閲覧ビューへリダイレクト。 *** [[:/ユースケースで何を返すかは別途指定]] [#z6538876] ***いろいろなユースケース [#tf59d46e] 権限(錠)別になる。 -閲覧 -編集 2ステップ構成。 1.NotationTextを含む編集ビューを返す。 2.投稿・更新・リダイレクトコードを返す。リダイレクト先はリクエストにある。 -履歴 ***一時的なページ [#s61d3807] ページ/要素の公開API(WebAPI)を呼び出す方法。ページ/要素を直接呼びたいときに使う。実装では一時的なページに特定の要素を配置して呼び出す。[[→:埋め込み]] 一時的ページにページ/ページ/要素/ページ/属性を埋め込んで(これが永続的なページを読み込むことに相当する)そのページをいずれかのビューに渡してレンダリング。 というユースケースが''[[→:jot]]'' ページ/要素プラグインごとにユースケースを用意しなくていい。実装ではページに記述されたときと処理を統合できる。 ***[[:i/ユースケーススコープ]] [#med0ad44] ***[[:/何に錠をかけるのか]] [#f4549e77] ***[[:/権限と拒否]] [#oc720b27] 権限判定をするなら拒否判定も必要。 ***[[:/ユースケースチェイン]] [#zb7a37c0] *** URLクエリーをページ化するユースケース [#z7460dd2] [[ページ/要素#m56b6643]]