🐍pythonotes

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

2. リーダブルコードの原則

2. リーダブルコードの原則
2.1 理解しやすいコードとは?

理解しやすいコードとは、他の開発者が短時間でその目的や機能を把握し、修正や拡張が容易にできるようなコードです。リーダブルなコードは、バグの発見や修正が容易であり、チームでの開発効率を向上させます。

具体例:

# 良い例
def calculate_area(width, height):
    return width * height

# 悪い例
def ca(w, h):
    return w * h

良い例では、関数名と引数名が明確で、その目的がすぐに理解できます。一方、悪い例では、関数名や引数名が短縮されており、コードの目的を把握するのに時間がかかります。

2.2 コードの読み手を考慮する

コードは、自分だけでなく他の開発者にも理解されるように書くべきです。読み手の立場に立って、以下の点を考慮してコーディングすることが重要です。

  • 変数名や関数名は、その目的や機能を明確に示すものにする。
  • コメントを適切に記述し、コードの意図や注意点を説明する。
  • 複雑な処理は、適切に分割し、各部分の役割を明確にする。
2.3 リーダブルコードの3つの原則

リーダブルコードには、以下の3つの原則があります。

  1. シンプルさ: コードはシンプルで、短く、明確なものにすることが望ましいです。冗長なコードや複雑な処理は、理解を難しくし、バグの温床になります。
    # 良い例
    total = sum(prices)
    
    # 悪い例
    total = 0
    for price in prices:
        total += price
  2. 明確さ: 変数名や関数名は、その目的や機能を明確に示すものにすることが重要です。名前が適切であれば、コメントを減らすことができ、コードの可読性が向上します。
    # 良い例
    def calculate_discounted_price(price, discount_rate):
        return price * (1 - discount_rate)
    
    # 悪い例
    def calc_dp(p, dr):
        return p * (1 - dr)
  3. 一貫性: コード全体で一貫したスタイルや命名規則を採用することが重要です。一貫性があるコードは、読み手が予測しやすくなり、理解が容易です。以下の点に注意してコーディングしましょう。
    • 変数名や関数名の命名規則(キャメルケース、スネークケースなど)を統一する。
    • インデントや改行のスタイルを統一する。
    • コメントの書き方やドキュメンテーションのフォーマットを統一する。

    例:

    # 良い例
    def get_user_name(user):
        return user["name"]
    
    def set_user_name(user, name):
        user["name"] = name
    
    # 悪い例
    def getUser(user):
        return user["name"]
    
    def set_user_name(user, name):
        user["name"] = name

    良い例では、関数名の命名規則がスネークケースで統一されています。一方、悪い例では、関数名の命名規則がキャメルケースとスネークケースで混在しており、コードの一貫性が損なわれています。

リーダブルコードの原則を意識してコーディングすることで、他の開発者が理解しやすく、保守性が高いコードを書くことができます。常に読み手の立場に立ち、シンプルで明確なコードを心がけましょう。