- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:変更に強い設計のよくあるパターンを教えて下さい)
変更に強い設計のパターンは?
このQ&Aのポイント
- 企業の業務システムの設計において、変更に強い設計のパターンを知りたいです。
- 検索系の画面でプルダウンを選択し、値に基づいてDBを検索する設計では、変更に弱いと指摘されました。変更に強い設計のパターンを知りたいです。
- 変更に強い設計のパターンを知りたいです。プルダウンの値によってDBの検索条件が変わる場合、どのような設計が良いでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
2つのDBを使うようにすれば良いかもしれません。 プルダウンで'A'ならWHERE句を変更する。ではなくて、プルダウンで'A'が選択されたら'A'の値を別テーブルより取得して、その値でWHERE句を生成するようにする、なんて事をすると良いかもしれませんね。 道具建てとしては、PL/SQLなんかもあったほうが良いかもしれませんね。
その他の回答 (1)
- NNori
- ベストアンサー率22% (377/1669)
回答No.1
要するにあなたは、こんな設計を書いてしまったのでしょう? Aだったら、where条件を これ1と、これ2を指定して検索してください。 Bだったら、where条件を これ3と、これ4を指定して検索してください。 Cだったら、where条件を これ5と、これ6を指定して検索してください。 。。。 これじゃぁ、ダメですよね。 解決法は上司から聞いたそうなので、わざわざ書きませんが、要するに変更に強い設計のパターン は、いかに想像力を働かせて、パターンを考えられるか?なのです。 自分がやってることを客観的に見ることができるか、も重要です。 客観的に見ることができれば、いろいろなパターンが見えてくるものです。
質問者
お礼
はい。その通りだと思います。 客観的に見れるように頑張ります。
お礼
ありがとうございます。 例えば、マッピングするテーブルを設けてこんなデータを用意するわけですね。 pulldows_value where_joken --------------------+------------------------- A where table.column = 'A' and ... B where table.column = 'B' and ... で、プルダウンが増えたら、このテーブルをメンテしていけば、 SQLのロジックを変える必要がないということですね。 他にもご経験からこんなことがあって、こう対処したよ(すればよかった)とかございましたら教えていただけると嬉しいです。