「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > コードの匂い - 言語の混乱

コードの匂い - 言語の混乱

2024 年 11 月 19 日に公開
ブラウズ:648

複雑すぎる名前付けは混乱を招く

TL;DR: 名前を付けるのは難しいです。不必要に複雑にして難しくしないでください。

問題点

  • 不明瞭、誤解を招く、漠然とした曖昧な名前

  • 冗長な用語

  • 紛らわしい抽象化

  • 難解な略語

ソリューション

  1. 命名規則を簡素化する

  2. 一貫性を確保

  3. 不必要な専門用語を避ける

  4. 動作に基づいてわかりやすい名前を使用する

  5. 一貫した用語を維持する

コンテクスト

ルートヴィヒ・ウィトゲンシュタインは、多くの混乱は言語の誤用から生じると主張しました。

これは、名前を複雑にしすぎたり、比喩を混ぜたり、一貫性のない用語を使用したりするときに発生します。

クラス、メソッド、または変数に明確に名前を付けると、他の人がナビゲートするのに苦労する言語迷路が作成されます。

これによりバグが発生し、メンテナンスが困難になり、チームのフラストレーションにつながります。

サンプルコード

間違っている

public class AbstractDataHandlerManager {
    private String dtStr;

    public void execProcessingOps(String input) {
        if (dtStr != null && !dtStr.isEmpty()) {
            // process
        }
    }
}

public class SETIProcessor {

    public void processSignal(String input) {      
            // process
        }
    }
}

検出

[X] マニュアル

名前が長くなり始めた場合、または「Abstract」、「Manager」、「Handler」、「Helper」、または「Data」が頻繁に表示される場合に、この臭いを検出できます。

もう 1 つの兆候は、コード レビューなどで名前の意味を他の開発者に説明しなければならない場合です。

タグ

  • ネーミング

レベル

[X] 初心者

AIの生成

AI ジェネレーターは、考えられるすべてのコンテキストをカバーしようとする冗長で一般的な名前を生成することによって、この匂いを作成することがよくあります。

彼らは多くの分野の専門家であり、コードを作成しますが、指示がない限り、両方を同時に行うことはよくありません。

AI検出

AI ジェネレーターは、「名前を単純化する」や「冗長な用語を削除する」などの単純なリファクタリング命令でこの問題を解決できる場合がありますが、より深い文脈の理解には苦労します。

結論

コード内の言語上の混乱は、不必要な複雑さにつながります。

コードを読みやすく、保守しやすくするために、明確で一貫性のあるわかりやすい名前を使用します。

関係

詳細情報

ウィトゲンシュタインの言語混乱の概念

免責事項

コードの匂いは私の意見です。

クレジット

Unsplash の Mimi Tian による写真


明確な言葉の最大の敵は不誠実です。

ジョージ・オーウェル


この記事は CodeSmell シリーズの一部です。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/mcsee/code-smell-265-linguistic-confusion-2ihj?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3