- ベストアンサー
Webアプリケーション設計の禁じ手
JSP等でWebアプリケーションを作成する予定なのですが、禁じ手はありますか? 例えば、1ページ内にプルダウンメニューは10個以上置かないとか・・・。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>日付をプルダウンにするというのは、 >「年」「月」「日」別々のプルダウンですよね。 >「年」の範囲を指定する必要があると思いますが、 >過去のデータを表示する際に範囲外の年も >あり得ますよね。 >そういうものはどういう風に対応されてますか? 少なくともデータが存在し得ない年は選択できないようにすべきですね。 アプリケーションによりますが、スケジューラなんかだと、 現在年-2 ~ 現在年+2(動的に計算) くらいを基本として「サービス開始年より前の年はプルダウンに出さない」という処理を加えれば問題ないと思います(細かい話ですが)。 仕事でグループウェアを作ったときはそうした覚えがあります。 >> ・JavaScriptは極力使わない >> →ブラウザ依存を避ける > >単なる入力チェックだけにするっていうことでしょうか? >数値チェックだけなら良さそうな感じですが・・・。 そうですね。単純な処理なら問題ないと思いますが、 JavaScriptが絡んでくるとブラウザのバージョンごとでテストを行う必要が出てくるので「工数にうるさいプロジェクト」ではあまり好まれていません。 JavaScriptをオフにした状態で訪れるユーザ(最近多い)などへの対応も考えなければなりませんね。 入力チェックに関しては、汎用的なエラーチェックロジックを「Javaのフレームワーク」として会社ごとに持っている場合が多いですね。 エラーメッセージを動的に生成したりということを考えるとやっぱりJavaScriptよりもJavaで汎用エラーチェッククラスを作っておいて、サーバサイドで入力チェックを行うほうが便利かと思います。
その他の回答 (1)
- ai_yuzen
- ベストアンサー率100% (1/1)
禁じ手というか、仕事でWebアプリケーションの設計をするときに気をつけていることは ・数値や日付を入力する部分ではできるだけ入力ボックスではなくプルダウンを使う →ユーザが楽(入力チェック処理が不要というメリットも) ・入力ボックスではかならずMAXLENGTHを指定する →SQLのバインド変数として使うときなど ・JavaScriptは極力使わない →ブラウザ依存を避ける ・文字サイズはスタイルシートで指定する →ユーザ環境依存を避ける ・JSPにはなるべくJavaの処理を書かない →保守、デザイン修正が楽(Servletに処理を書く) こんなところでしょうか。 そんなことわかってるよと言われそうなものばかりですが。
補足
ありがとうございます。 ちょっと細かいところで質問したいのですが・・・。 > ・数値や日付を入力する部分ではできるだけ入力ボックスではなくプルダウンを使う > →ユーザが楽(入力チェック処理が不要というメリットも) 日付をプルダウンにするというのは、「年」「月」「日」別々のプルダウンですよね。 「年」の範囲を指定する必要があると思いますが、過去のデータを表示する際に範囲外の年もあり得ますよね。 そういうものはどういう風に対応されてますか? > ・JavaScriptは極力使わない > →ブラウザ依存を避ける 単なる入力チェックだけにするっていうことでしょうか? 数値チェックだけなら良さそうな感じですが・・・。 他のものはすべて納得です。