HOME»基本情報技術者試験掲示板»22年春 問3
投稿する
22年春 問3 [1819]
情報太郎さん(No.1)
設問1のaの答えが、ウの試験科目の増減と書いているのですが、
例えば、日本史の科目を増やす場合、
案Aの場合は、成績表のレコードに日本史の科目を増やすだけで、
案Bの場合は、科目表のレコードを1行足すだけでいけるので、
何も変わらないと思うのですが、なぜウの試験科目の増減が答えなのか教えてください。。。
例えば、日本史の科目を増やす場合、
案Aの場合は、成績表のレコードに日本史の科目を増やすだけで、
案Bの場合は、科目表のレコードを1行足すだけでいけるので、
何も変わらないと思うのですが、なぜウの試験科目の増減が答えなのか教えてください。。。
2019.05.28 16:19
おじさんさん(No.2)
「柔軟性がある」「拡張性がある」ということは、修正があった場合に
「影響する箇所が少ない」
と言い換えられます。
そう考えると、例えば
A表、B表ともに成績表が1000レコードあったとします。
「日本史」という科目が追加になると、列が増えるのでA表は
成績表全行に影響が及びます。
なぜならば、すでにある1000行すべてに列が追加されるからです。
この場合、すでにあるレコードのデフォルト値をどうするかなどを考る
必要があったり、そのデフォルト値をプログラム側でどう扱うかなども
考慮に入れる必要があります。
対して、B表では試験表に1レコード追加するだけなので、すでにある成績表の行は
全く影響を受けません。
この影響度の差が、科目追加における「柔軟性」の差であり、拡張性の差でもあります。
「影響する箇所が少ない」
と言い換えられます。
そう考えると、例えば
A表、B表ともに成績表が1000レコードあったとします。
「日本史」という科目が追加になると、列が増えるのでA表は
成績表全行に影響が及びます。
なぜならば、すでにある1000行すべてに列が追加されるからです。
この場合、すでにあるレコードのデフォルト値をどうするかなどを考る
必要があったり、そのデフォルト値をプログラム側でどう扱うかなども
考慮に入れる必要があります。
対して、B表では試験表に1レコード追加するだけなので、すでにある成績表の行は
全く影響を受けません。
この影響度の差が、科目追加における「柔軟性」の差であり、拡張性の差でもあります。
2019.05.28 19:16
情報太郎さん(No.3)
デフォルト値というのがあまり理解できていませんが、1000行全てに影響が及ぶということで、B案の方が影響する箇所が少ないことが理解できました!ありがとうございます!
2019.05.29 09:42