平成25年度春期 応用情報技術者試験 午前 問49
ソフトウェアのリファクタリングの説明はどれか。
- ア 外部から見た振る舞いを変更せずに保守性の高いプログラムに書き直す。
- イ ソースコードから設計書を作成する。
- ウ ソフトウェア部品を組み合わせてシステムを開発する。
- エ プログラムの修正が他の部分に影響していないかどうかをテストする。
解答・解説を見る
正解:ア
AI解説
正解はア。リファクタリングとは、ソフトウェアの外部から見た振る舞い(機能・入出力)を変えずに、内部構造を整理して理解しやすく保守しやすいコードに書き直すことである。「外部仕様を変えない」+「内部品質の改善」の2点が定義の核心であり、XP(エクストリームプログラミング)のプラクティスとしても知られる。 ア: 正しい。外部から見た振る舞いを変更せずに、内部構造を改善して保守性の高いプログラムに書き直すのがリファクタリングである。 イ: 誤り。ソースコードから設計書などの上位成果物を作成するのはリバースエンジニアリングの説明である。 ウ: 誤り。ソフトウェア部品(コンポーネント)を組み合わせて開発するのは、部品化再利用・コンポーネントベース開発の説明である。 エ: 誤り。修正が他の部分に影響していないかを確認するテストは、リグレッションテスト(回帰テスト)の説明である。 💡 リファクタリングとリグレッションテストはセットで出る。「作り直しても動きは同じ=リファクタリング」「直した後に他が壊れていないか確認=リグレッションテスト」と対で覚える。
出典:平成25年度 春期 応用情報技術者試験 午前 問49 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。