要約: 良いコードを書くには?優れたコードとは、読みやすく、理解しやすく、デバッグしやすく、変更しやすく、そして最も重要なことに、欠陥が少ないものと定義できます。明らかに、適切なコードを入力するには多くの時間がかかりますが、コードの保守と再利用に費やす時間とエネルギーが削減されるため、長期的にはこれは理にかなっています。これは、30 年のソフトウェア経験を持つ経験豊富なプログラマーによる要約です。一 なぜ良いコードをノックアウトするのでしょうか?
良いコードとは、読みやすく、理解しやすく、デバッグしやすく、変更しやすく、そして最も重要なことに欠陥が少ないものと定義できます。明らかに、適切なコードを入力するには多くの時間がかかりますが、コードの保守と再利用に費やす時間とエネルギーが削減されるため、長期的にはこれは理にかなっています。 実際、良いコードは再利用可能なコードであると考えることができます。これは、以下で説明する重要な原則の 1 つでもあります。コードは、プログラミング作業の短期的な目標に対して特定の機能を果たすだけかもしれませんが、コードを再利用しようとする人 (自分自身を含む) がいない場合、そのコードは何らかの点で不十分で欠陥があると言えます。複雑すぎるか、具体的すぎるか、別の状況下で壊れる可能性が非常に高いか、他のプログラマがあなたのコードを信頼しない可能性があります。 経験レベルに関係なく、次のヒントをコード (実験やプロトタイプを含む) に一貫して適用すれば、すぐに優れたコードを作成できるでしょう。 1. 単一責任の原則に従います 関数は、プログラマのライブラリの中で唯一最も重要な抽象形式です。再利用の機会が増えるほど、記述する必要のあるコードが減り、コードの信頼性が高まります。単一責任の原則に従う小さな関数は、再利用される可能性が高くなります。 2. 共有状態を最小限に抑える ファイル スコープ変数であっても、オブジェクトのメンバー フィールドであっても、関数間の暗黙的な共有状態は最小限に抑える必要があります。これにより、必要な値をパラメーターとして明示的に渡すことが容易になります。関数が望ましい結果を達成することが明らかであれば、コードは理解しやすく、再利用しやすくなります。 ここから 1 つの結論が導き出されます。オブジェクトのメンバー変数よりも静的なステートレス変数を優先する必要があります。 3. ローカライズされた副作用 理想的な副作用 (コンソールへの出力、ログ記録、グローバル状態の変更、ファイル システム操作など) は、コード全体に分散するのではなく、別個のモジュールに配置する必要があります。機能的な副作用は、多くの場合、単一責任の原則に違反します。 4. 不変オブジェクトを好む オブジェクトの状態がコンストラクターで一度設定され、再度変更されない場合は、正しく構築されると有効なままになるため、デバッグが非常に簡単になります。これは、ソフトウェア プロジェクトの複雑さを軽減する最も簡単な方法の 1 つです。 5. インターフェイスを多く使用し、クラスを使用しない インターフェイス (または C++ のテンプレート パラメーターや概念) を受け入れる関数は、クラスで動作する関数よりも再利用可能です。 6. モジュールに適切な原則を適用する ソフトウェア プロジェクトをより小さなモジュール (ライブラリやアプリケーションなど) に分割して、モジュールの再利用を実現します。モジュールの重要な原則は次のとおりです: 依存関係を最小限に抑えるコード行を記述する前に、必要なことをすでに実行しているツール、関数、またはライブラリがあるかどうかを自問してください。別の既存の関数を呼び出すのではなく、この関数を自分で実装する必要があるでしょうか?
まとめ
プログラミングは芸術形式やスポーツのようなものであり、継続的な練習と他の人からの継続的な学習を通じてのみ、コードの品質を継続的に向上させることができ、より効率的なプログラマーになることができます。
以上が知っておくべきプログラミングの 10 のヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。