この質問は主にPHPのZendを対象としていますが、他の言語やフレームワークにも当てはまりますので、皆さんの意見を歓迎します。フォームオブジェクトまたはモデルで検証を行う必要がありますか?
私はごく最近Zendのフレームワークを使用してきた、そしてそれは完璧ではないのですが、私はそれでかなり良い時間を過ごしてきました。しかし、私を夢中にさせることの1つは、Zendを使用する人々のほとんどの例が、モデルではなくv alidation in special form objectsです。フォーム入力以外の方法でデータがシステムに入力される可能性があるので、これは悪い習慣だと思います。他の入力を検証するためにバリデーターを曲げたりねじったり、検証を2番目に実行したり、ロジックを複製したりする必要があります。
私と同じような気持ちがある人もいますが、Zendの開発者が理由を挙げてこの選択をしてくれて、他の人が問題なく使っているようですここからコミュニティからのフィードバックを得ることができます。
私が言ったように、これは主にZendに当てはまりますが、Zendフレームワークの枠内で作業するのではなく、問題を全体として見ることが重要だと思います.Zendは、 、またはあなたが望むように、少しだけ。