問題
問48
既存のプログラムを、外側から見たソフトウェアの動きを変えずに内部構造を改善する活動として、最も適切なものはどれか。
- テスト駆動開発
- ペアプログラミング
- リバースエンジニアリング
- リファクタリング
[出典:ITパスポート試験 令和3年度 問48]
スポンサーリンク
正解
正解は「エ」です。
解説
リファクタリングとは、既存のプログラムの外部仕様を変えずに、内部構造を整理し、可読性や保守性を向上させる活動です。選択肢「エ」の「リファクタリング」が正解です。
プログラムの開発や運用が進むにつれて、コードの可読性が低下し、修正が困難になることがあります。このような場合、リファクタリングを行うことで、コードを整理し、保守性を向上させることができます。例えば、同じ処理を複数の場所で記述している場合、それらを関数としてまとめることでコードの冗長性を削減できます。また、変数名を適切なものに変更することで、コードの理解が容易になります。リファクタリングの目的は、コードの品質を向上させ、開発速度を維持することです。
ア(テスト駆動開発):
テスト駆動開発は、テストを先に作成し、テストに合格するようにコードを実装していく開発手法であり、リファクタリングとは異なります。
イ(ペアプログラミング):
ペアプログラミングは、2人の開発者が協力してコードを書く手法であり、コードの内部構造改善を目的とするリファクタリングとは異なります。
ウ(リバースエンジニアリング):
リバースエンジニアリングは、既存のソフトウェアの動作を解析し、仕様や設計を理解する手法であり、内部構造の改善を目的とするリファクタリングとは異なります。
難易度
普通
リファクタリングの概念を理解していれば解答できる問題ですが、他の開発手法と混同しないよう注意が必要です。
スポンサーリンク
用語補足
リファクタリング:
既存のプログラムの動作を変えずに内部構造を整理し、可読性や保守性を向上させる技術的な改善活動です。
テスト駆動開発:
まずテストコードを作成し、それに合格するようにコードを実装していく開発手法です。
対策
リファクタリングの目的と実施方法を理解し、テスト駆動開発やリバースエンジニアリングとの違いを整理することが重要です。特に、リファクタリングの具体例として、コードの整理や関数の統合、変数名の変更などを学んでおくと、試験で適切な選択がしやすくなります。