応用情報技術者試験過去問を解いてみた R6年度 春期 問19

はじめに

今回も、応用情報技術者試験の過去問を解いていきます。
今回のテーマは「性能改善のための分析ツール」です。

システムの高速化やボトルネックの特定は、実務でも非常に重要なスキルなので、しっかり理解していきましょう。


問題

プログラムを構成するモジュールや関数の実行回数、実行時間など、性能改善のための分析に役立つ情報を収集するツールはどれか。

  • ア:エミュレーター
  • イ:シミュレーター
  • ウ:デバッガ
  • エ:プロファイラ

解答

エ:プロファイラ


解説

この問題は、「性能改善のために使うツールはどれか?」という基本問題です。

結論から言うと、
👉 実行時間や呼び出し回数を測定するツール=プロファイラ です。

なぜプロファイラなのか?

プロファイラは、プログラムの実行状況を分析するツールで、次のような情報を取得できます。

  • 関数ごとの実行時間
  • 呼び出し回数
  • CPU使用率
  • ボトルネック箇所

つまり、
👉「どこが遅いのか」を可視化できるツールです。


各選択肢の違い(重要)

選択肢ツール名役割今回との関係
エミュレータ別環境を再現する×
シミュレータ仮想的に動作を再現する×
デバッガバグを探す
プロファイラ性能を分析する

イメージ図(ツールの役割)

プログラム実行

┌─────────────────┐
│ デバッガ │ → バグを見つける
└─────────────────┘

┌─────────────────┐
│ プロファイラ │ → 性能を分析する
└─────────────────┘

問題の用語解説

プロファイラ(Profiler)

プログラムの実行状況を測定・分析するツール。
性能改善(チューニング)に使われる。

👉 例

  • 「この関数だけ異常に時間がかかっている」
  • 「ループが無駄に多い」

デバッガ(Debugger)

プログラムのバグを見つけるためのツール。
ステップ実行や変数確認ができる。

👉 目的:正しく動くか
👉 プロファイラとの違い:速いかどうかは見ない


エミュレータ(Emulator)

別の環境を再現するツール。
例:スマホアプリをPCで動かす


シミュレータ(Simulator)

現実の動作を模擬的に再現するツール。
例:交通シミュレーション、ネットワーク負荷試験


体系的位置づけ

この問題は、応用情報のシラバスでは以下に位置づけられます。

ソフトウェア
└ プログラムの形態と性質
└ 開発・保守ツール
├ デバッガ
└ プロファイラ ← 今回ココ

👉 「開発支援ツール」の理解が問われる分野です。


今回の問題の重要ポイント

① 性能改善=プロファイラ(超重要)

👉 試験ではほぼ鉄板の対応関係です

  • バグ修正 → デバッガ
  • 性能改善 → プロファイラ

② 「何を測るか」でツールを判断する

見たいものツール
バグの原因デバッガ
実行時間・回数プロファイラ

③ 実務でも頻出

実際の開発でもよくある流れ:

① 動かす(完成)
② 遅いことに気づく
③ プロファイラで分析
④ ボトルネック修正

👉 試験だけでなく実務でも超重要な考え方です。


まとめ

今回のポイントを整理します。

  • 性能分析に使うのは プロファイラ
  • デバッガは「バグ」、プロファイラは「性能」
  • 実行時間・回数などの測定がキーワード

👉 覚え方
「遅いならプロファイラ」


コメント

タイトルとURLをコピーしました