修了試験 2014-07-27実施分 基本情報技術者試験 問47
あるプログラム言語の解説書の中に次の記述がある。 この記述中の"良いプログラム"がもっている特徴はどれか。 このプログラム言語では,関数を呼び出すときに引数を保持するためにスタックが使用される。 引数で受け渡すデータを,どの関数からでも参照できる共通域に移せば,スタックの使用量を減らすことができるが,"良いプログラム"とは見なされないこともある。
正答3
解説
正解は3です。 記述では、引数をスタックで渡す代わりに、どの関数からでも参照できる共通域(グローバル変数)にデータを置けばメモリを節約できると述べています。 それでも「良いプログラム」と見なされないのは、共通域を使うと関数どうしの結び付きが強くなるからです。 【選択肢別解説】 1:× 共通域を使えばスタックの使用量は減るので、メモリの節約はむしろ共通域を使う側の利点です。 記述の「良いプログラム」がもつ特徴ではありません。 2:× 共通域を使うと引数の受け渡しが減り、実行速度が上がる可能性もあります。 記述の「良いプログラム」は、速度の最適化を理由とするものではありません。 3:○ 引数でデータを受け渡せば、各モジュールは渡されたデータだけを扱います。 モジュールの独立性が高まり、一部を変更しても他の部分への影響が少なくなります。 4:× ステップ数の少なさや分かりやすさは、記述の論点ではありません。 記述は、データの受け渡し方法によるモジュール間の影響を問題にしています。 【ポイント】 共通域を介してデータをやり取りする結合(共通結合)は、モジュール間の結び付きが強い悪い結合です。 必要なデータだけを引数で渡すデータ結合が望ましい形です。まとめて解く
修了試験 2014-07-27実施分を通しで解く(80問)→