ツールのタグ
オブジェクトとデータ構造
オブジェクトとデータ構造
1. ゲッターとセッターを使用する オブジェクトのカプセル化を使用する
2. オブジェクトにはプライベートまたは保護されたメンバー変数を使用します。
1.ゲッターとセッターを使用する
PHP では、オブジェクト プロパティへの変更を制御するメソッドとしてpublic、 protected、private を使用できます。
-
オブジェクトのプロパティを取得する以外の操作を実行する場合、コード内の各プロパティ アクセス メソッドを検索して変更する必要はありません。
-
set
に対応する属性メソッドがある場合、パラメータ検証を追加するのが簡単 -
パッケージ内の表記
-
set
とgetを使用すると、ロギングとエラー制御を簡単に追加できます。 -
現在のクラスを継承するときに、デフォルトのメソッド関数をオーバーライドできます。
-
オブジェクトのプロパティをリモート サーバーから取得する場合、
get*
、set*は遅延読み込みを使用するのが簡単です。
###悪い:###
リーリー ###良い:### リーリー
2. オブジェクトにはプライベートまたは保護されたメンバー変数を使用します
パブリック メソッドとプロパティを変更することは、外部コードが簡単に依存する可能性があり、制御できないため、非常に危険です。これを変更すると、このクラスのすべてのユーザーに影響します。パブリック メソッドとプロパティの変更は、一部の外部コードが簡単に依存する可能性があり、どのコードがそれらに依存するかを制御できないため、変更が最も危険です。クラス内の変更は、クラスのすべてのユーザーにとって危険です。
-
protected への変更は、サブクラスで利用できるため、public への変更とほぼ同じくらい危険です。これらの唯一の違いは、呼び出し可能な場所が異なり、それらへの変更は、このクラスを統合するすべての場所に影響します。 protected 修飾子は、どの子クラスのスコープでも使用できるため、public と同様に危険です。これは事実上、public と protected の違いはアクセス メカニズムのみであり、カプセル化の保証は同じであることを意味します。クラス内の変更は、すべての子孫クラスにとって危険です。 。
- private への変更は、コードのこの部分が現在のクラスにのみ影響することを保証します。private 修飾子は、単一クラスの境界内でのみコードを変更するのは危険であることを保証します (変更しても安全であり、ジェンガ効果はありません)。
したがって、クラス内のコードにアクセスできるかどうかを制御する必要がある場合は public/protected を使用し、それ以外の場合は private を使用します。
Fabien Potencier によるこのブログ投稿を読むことができます。
###悪い:### リーリー ###良い:###
リーリー関連動画
ホットAIツール
脱衣画像を無料で
写真から衣服を削除するオンライン AI ツール。
リアルなヌード写真を作成する AI 搭載アプリ
AIを活用した投資調査により賢明な意思決定を実現
人気の記事
ホットトピック
20459
7
13602
4
11942
4
8945
17
人気のツール
使いやすく無料のコードエディター
中国語版、とても使いやすい
強力な PHP 統合開発環境
ビジュアル Web 開発ツール
神レベルのコード編集ソフト(SublimeText3)












![PHP 実践開発入門: PHP クイック作成 [中小企業フォーラム]](https://img.php.cn/upload/course/000/000/035/5d27fb58823dc974.jpg)
