クリーンアーキテクチャーのユーザー入力をチェックする場所について質問です。
例えばユーザーが自分の名前を入力するとそれをDBに保存するアプリがあったとします。
そして 仕様書
にユーザーは最大14文字の名前を保存できるという記載があります。
この場合、以下の図を参考にすると
引用先
http://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
名前が14文字以下かどうかチェックする処理はEntitiesが担当すると考えています。
なぜなら14文字以下かどうかは仕様書に記載があり、これをビジネスルールだと考えているからです。
ではSQLインジェクション対策として、ユーザーが入力した名前にDBを操作するような危険な文字が入っていた場合、
変換するような処理を実装するとします。この「DBを操作するような危険な文字を変換する処理」は仕様書に記載がなく、
ビジネスルールとは言えないのではないかと思っています。そのためこの処理はEntities/Use Casesの外側の層で記載すべきと考えているのですが、この考えは合ってますでしょうか
お手数ですが、ご回答お待ちしております。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/21 09:21