コードの匂い - ハンロンのカミソリ

PHPz
リリース: 2024-08-18 07:23:32
オリジナル
724 人が閲覧しました

複雑にしすぎないでください: シンプルにしてください

TL;DR: 過剰防御的なコードは不必要な複雑さをもたらします。

問題点

  • 不必要な複雑さ

  • 紛らわしいロジック

  • 隠れたバグ

  • メンテナンスが難しくなる

  • パフォーマンスが遅い

  • 乱雑なコード

ソリューション

  1. チェックを簡素化する

  2. 自分の論理を信じてください

  3. 必需品に焦点を当てる

  4. K.I.S.S.をフォローしてください。原則

  5. 定期的にリファクタリングする

コンテクスト

コードを考えすぎたり設計しすぎたりすると、不必要な複雑さが生じる可能性があります。

考えられるすべてのシナリオに対して防御する必要があるかもしれませんが、このアプローチでは、多くの場合、肥大化してわかりにくいコードが生成されます。

ハンロンのカミソリは、単純な間違いや誤解が起こりやすい場合には悪意を想定すべきではないと示唆しています。

過度に防御的なプログラミングを避け、明確で単純なロジックに焦点を当てます。

決して起こらない可能性のある将来の問題を予測したり、コードを柔軟にしすぎたりする可能性があります。

シンプルなコードは、保守、デバッグ、理解が容易です。

サンプルコード

間違っている

リーリー

リーリー

検出

[X] マニュアル

複雑なコードには通常より多くの行が含まれており、長いメソッドがヒントになる可能性があります。

タグ

    ブローター
レベル

[x] 中級

AIの生成

AI ジェネレーターは、考えられるあらゆるエッジケースを考慮しようとすると、この臭いが発生する可能性があります。

たとえば、NULL を完全に回避すれば、NULL の処理は不要です。

AI検出

AI ツールは、ロジックを分析し、適切なガイダンスとともに簡素化を提案することで、過度に防御的なコードを検出するのに役立ちます。

これらのツールでは、多くの場合、不要なチェックを削除するか、明確にするためにチェックを結合することが推奨されます。

結論

コードを考えすぎたり、過剰に設計したりしないでください。

最も可能性の高いシナリオに焦点を当て、明確で単純なロジックを作成します。

シンプルさにより、コードの品質が向上し、メンテナンスが容易になります。

関係

ウィキペディア

防御的なプログラミング

免責事項

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

クレジット

Unsplash のナチョ フェルナンデスによる写真


シンプルさは究極の洗練です。

レオナルド・ダ・ヴィンチ

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

以上がコードの匂い - ハンロンのカミソリの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!