validatorは必要か
大掛かりな仕組みとしてのvalidation機能は必要ないような気がしてきた。
そもそもvalidationの機能としては3つあると思う:
- 入力値の検証を行うことができること
- できるだけ定型的な方法で機械的に検証できることが望ましい
- 検証エラーの場合に入力画面に戻ること
- 入力内容が保持されていること
- できるならエラー箇所が判別可能な状態になること
- エラーメッセージの設定/表示が可能であること
- 項目単位/全メッセージのいずれも表示可能であること
Moony 0.9.0ではSmartyのプラグインとセッションを使用して、Strutsのカスタムタグ風味の実装がなされている。基本的なvalidation機能はMoony_Validatorに実装、各アクションクラスのvalidateメソッドから呼び出せるようになっている。結果として、かなり大きなMoony_SmartyPluginクラスとMoony_Validatorクラスができてしまった。
Moonyの構造を見直し、軽量化するに当たって、高機能なvalidation機能は必要ないのではないかという気がしている。そもそものターゲットが気軽なweb制作ツールであるMoonyにおいて、validationはそれほど重要な機能ではない。