ITパスポート試験 / 令和3年度 ITパスポート試験 公開問題 / 問48
certification-simodake-work

令和3年度 ITパスポート試験 公開問題 問48 解説 リファクタリング

既存のプログラムを,外側から見たソフトウェアの動きを変えずに内部構造を改善する活動として,最も適切なものはどれか。

  1. ア テスト駆動開発
  2. イ ペアプログラミング
  3. ウ リバースエンジニアリング
  4. エ リファクタリング ✓ 正答

解説

この問題は、キーワードの定義を直接問う問題です。「外側の動きを変えない」「内部構造の改善」というフレーズを見たら、即座に「リファクタリング」を選べるようにしましょう。この2つの条件を同時に満たすことが、リファクタリングを他の手法と区別する決定的な根拠です。

リファクタリングの正体と目的

リファクタリングとは、システムやプログラムの機能を変更せずに、ソースコードの読みやすさや保守性を向上させる作業を指します。具体的には、長すぎる関数を分割する、分かりにくい変数名やメソッド名を適切なものに変更する、冗長な記述を整理して短くするといった作業が含まれます。

なぜこのような作業が必要なのでしょうか。開発が進むにつれてコードは複雑化し、いわゆる技術的負債として蓄積されていきます。そのまま放置すると、将来的なバグの混入率が上がったり、仕様変更にかかる時間が長くなったりするため、定期的に整理整頓を行う必要があります。

他の選択肢が不適切な理由

アのテスト駆動開発(TDD)は、プログラムのコードを書く前にまずテストコードを書くという開発手法です。開発の進め方そのものを指す言葉であり、内部構造の改善作業とは異なります。

イのペアプログラミングは、2人1組で開発を行う手法です。1人がコードを書き、もう1人がチェックを行うことで品質を高めますが、これも開発の体制や手法を指す言葉です。

ウのリバースエンジニアリングは、完成したソフトウェアのコードや仕様を解析して、その仕組みを明らかにすることです。既存の製品を分解して構造を知る行為であり、改善そのものを指す言葉ではありません。

実際の試験での活かし方

ITパスポート試験では、似たような開発用語が選択肢に並びやすいため、それぞれの言葉が「プロセスの手法なのか」「解析の行為なのか」「改善の行為なのか」という切り口で整理しておくと、誤答を避けやすくなります。特にリファクタリングは、「機能追加はしない」「外部から見た挙動は変えない」という制約が試験における判断基準になることが多いです。この点を意識しておくだけで、自信を持って正解を選ぶことができます。

リファクタリング (プログラミング) - Wikipedia 技術的負債とは?解消のメリットやリファクタリングのポイントを解説 - DXコラム

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう