過去問解きまくり研究所 ホーム

平成21年度 秋期 午前Ⅱ 問5

設計

結合度に関する問題

あるプログラム言語の解説書の中に次の記述がある。この記述中の“良いプログラム”がもっている特徴はどれか。

このプログラム言語では,関数を呼び出すときに引数を保持するためにスタックが使用される。引数で受け渡すデータを,どの関数からでも参照できる共通域に移せば,スタックの使用量を減らすことができるが,“良いプログラム”とは見なされないこともある。

答えと解説を見る

✓ これが正解ウプログラムの一部(モジュール)を変更しても,残りの部分への影響が少ない。

解説

モジュールの変更が、ほかへ影響しにくいプログラムです。

記述の要点は、引数で渡すデータをどの関数からでも参照できる共通域に移すとスタックの使用量は減るが、それでも良いとは見なされない、という点です。共通域を介してデータを受け渡すと、多くのモジュールが同じデータに依存し、モジュール同士の結合度が強くなります。すると、ある関数で共通域の使い方を変えたとき、その領域を参照する別の関数にまで影響が広がります。引数で必要なデータだけを受け渡す形は、モジュールの独立性を保ち、一部を変えても残りへの影響を小さく抑えます。メモリを節約できる書き方をあえて退けている理由は何かと考えると、変更の影響範囲、つまり独立性が評価の基準になっていると分かります。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:平成21年度 秋期 システムアーキテクト試験 午前Ⅱ 問5

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)