×
科目A-1|開発技術
【修正前(重複が多い状態)】
price1_with_tax = price1 * 1.10
price2_with_tax = price2 * 1.10

【修正後(関数にまとめて共通化)】
def add_tax(price):
    return price * 1.10

price1_with_tax = add_tax(price1)
price2_with_tax = add_tax(price2)

もう少し詳しく

リファクタリング(Refactoring)とは、プログラムの「外部から見た動作や機能」は一切変更せず、ソースコードの「内部の構造」だけを整理して、美しく分かりやすいコードへと改善する作業です。
プログラムは、機能追加やバグ修正を繰り返すうちに、コードが複雑化し、冗長で読みにくい状態(技術的負債)に陥りやすくなります。これを放置すると、将来の仕様変更時にバグが発生しやすくなり、開発速度が低下します。リファクタリングでは、重複するコードを共通関数にまとめたり、長すぎるメソッドを適切に分割したり、変数や関数に分かりやすい名前を付け直したりします。
これを安全に行うための絶対条件は、「テストコード(単体テスト)が存在すること」です。リファクタリング前とリファクタリング後でテストを実行し、機能が変わっていないことを保証しながら、少しずつコードを書き換えていきます。