🐍pythonotes

pythonなどなどについて触ったときのメモを書くところ。記事の生成については一部AIを活用しています。

9. リーダブルなコードの実例

9. リーダブルコードの実例
9.1 よくあるコードの問題点

以下に、リーダブルコードでない例を示します。

def p(x, y):
    z = x + y
    if z > 10:
        return True
    else:
        return False

このコードには、次のような問題点があります。

  1. 関数名と変数名が短すぎて、その目的が理解しにくい。
  2. if文のelse節を省略できるが、そのままになっている。
9.2 改善例と解説

問題点を解消した改善例を以下に示します。

def is_sum_greater_than_ten(x: int, y: int) -> bool:
    sum_value = x + y
    return sum_value > 10

この改善例では、以下の点が改善されています。

  1. 関数名が具体的で、引数の型と戻り値の型が明示されている。
  2. 変数名がわかりやすく、コードの意図が明確になっている。
  3. if文をシンプルにし、else節を省略した。
9.3 実践編: リーダブルコードへのリファクタリング

以下に、リーダブルコードへのリファクタリングの実例を示します。

不適切なコード:

def f(l):
    t = 0
    for i in l:
        t += i
    return t

リファクタリング後のコード:

def calculate_sum(numbers: List[int]) -> int:
    total = 0
    for number in numbers:
        total += number
    return total

リファクタリング後のコードでは、関数名と変数名がわかりやすくなり、引数と戻り値の型が明示されています。これにより、コードの可読性が向上し、他の開発者が理解しやすくなります。