スキルにばらつきがあるとか、全体的にスキル不足とか言う一部方面の支援というか、まぁ、その辺のチームへの指針めいたものができるといいなぁと思い、まずはざっと思いついたことをメモしておく。いずれ整理するつもり。
ツール、ライブラリとかの環境面
バリデーション
サーバーサイドのチェックありき、JavaScriptでのチェックは必要に応じて、という位置付けで。
画面の遷移
単純な遷移、検索処理はGETで。
登録、更新等の処理はPOSTで行う。
POSTする場合はPRGパターンを適用する。302なのか303なのかは対象としているブラウザにもよるしなー。HTTP 1.1なら303なんだろうけど。
重複サブミットの対応方法は要件しだいでどうとでも。まぁ、3つめのエラーとするは嫌だなー。
メッセージ
ユーザがそのメッセージを見たとき、何をすべき、もしくは、どうすべきか簡潔に示せているか。
開発側にしかわからない専門用語を使用していないか。
ツール、ライブラリとかの環境面
- Web Frameworkの利用
StrutsとかSeaser2関連とか。Click Frameworkとかwicketとかに興味あるけど。 - ORマッパーの利用
まぁなんでもいいんだけど、薄い方がいいな。 - JavaScriptライブラリの利用
prototype.jsとかjQueryとか。
バリデーション
サーバーサイドのチェックありき、JavaScriptでのチェックは必要に応じて、という位置付けで。
画面の遷移
単純な遷移、検索処理はGETで。
登録、更新等の処理はPOSTで行う。
POSTする場合はPRGパターンを適用する。302なのか303なのかは対象としているブラウザにもよるしなー。HTTP 1.1なら303なんだろうけど。
重複サブミットの対応方法は要件しだいでどうとでも。まぁ、3つめのエラーとするは嫌だなー。
- 2回目以降は処理しない
- 2回目以降は上書き
- 2回目以降はエラーとする
メッセージ
ユーザがそのメッセージを見たとき、何をすべき、もしくは、どうすべきか簡潔に示せているか。
開発側にしかわからない専門用語を使用していないか。
