基本情報技術者試験 - 令和8年1月修了 - 問14
コンパイラによる最適化の主な目的はどれか。
| ア | プログラムの実行時間を短縮する。 |
|---|---|
| イ | プログラムのデバッグを容易にする。 |
| ウ | プログラムの保守性を改善する。 |
| エ | 目的プログラムを生成する時間を短縮する。 |
答え : ア
分野 : テクノロジ系 › コンピュータシステム › ソフトウェア › 開発ツール
解説 :
コンパイラの「最適化」(optimization)という機能の目的を問う問題です。最適化とは,ソースコードをコンパイルする際に,プログラムの動作結果を変えずに,より効率的な機械語コードに変換する処理のことです。その主な目的は,生成されたプログラムの実行時間を短縮したり,メモリ使用量を削減したりすることにあります。
誤りの選択肢のうち,「デバッグを容易にする」という説明は誤りで,むしろ最適化によってコードの構造が変化するため,デバッグがしにくくなる場合もあります。「保守性を改善する」という説明も誤りで,最適化は実行効率を高めることが目的であり,人間にとっての読みやすさや保守のしやすさとは直接関係しません。「目的プログラムを生成する時間を短縮する」という説明も誤りで,むしろ最適化処理を行うことでコンパイル自体にかかる時間は長くなる傾向があります。
分野 : テクノロジ系 › コンピュータシステム › ソフトウェア › 開発ツール
解説 :
コンパイラの「最適化」(optimization)という機能の目的を問う問題です。最適化とは,ソースコードをコンパイルする際に,プログラムの動作結果を変えずに,より効率的な機械語コードに変換する処理のことです。その主な目的は,生成されたプログラムの実行時間を短縮したり,メモリ使用量を削減したりすることにあります。
誤りの選択肢のうち,「デバッグを容易にする」という説明は誤りで,むしろ最適化によってコードの構造が変化するため,デバッグがしにくくなる場合もあります。「保守性を改善する」という説明も誤りで,最適化は実行効率を高めることが目的であり,人間にとっての読みやすさや保守のしやすさとは直接関係しません。「目的プログラムを生成する時間を短縮する」という説明も誤りで,むしろ最適化処理を行うことでコンパイル自体にかかる時間は長くなる傾向があります。