ホームページ > バックエンド開発 > PHPチュートリアル > PHP5 のクラスとオブジェクト - オブジェクト指向プログラミング [1]_PHP チュートリアル

PHP5 のクラスとオブジェクト - オブジェクト指向プログラミング [1]_PHP チュートリアル

WBOY
リリース: 2016-07-21 16:11:01
オリジナル
862 人が閲覧しました


著者:レオン・アトキンソン 翻訳:Haohappy オブジェクト指向プログラミングは、大規模なソフトウェア プロジェクト、特に複数人が関与するプロジェクトにソリューションを提供するように設計されています。ソース コードが 10,000 行以上になると、すべての変更が望ましくない副作用を引き起こす可能性があります。これは、モジュールが秘密の同盟を形成する場合に発生します。第一次世界大戦前のヨーロッパのようなものです。

//haohappy 注: これは、モジュール間の相関が高すぎ、相互依存性が強すぎることを意味します。その結果、他のモジュールも変更する必要があると考えてください。ログインの処理に使用されるモジュールを使用すると、クレジット カード処理モジュールがそのデータベース接続を共有できるようになります。もちろん、別のデータベース接続の費用を節約できるので、出発点は適切です。ただし、場合によっては、ログイン処理モジュールが変数の 1 つの名前を変更することがあります。これにより、両者の間の合意が分断され、クレジット カード モジュールで処理エラーが発生し、さらに請求書処理モジュールでエラーが発生する可能性があり、システム内のすべての無関係なモジュールがこれによって問題が発生する可能性があります。

大多数のプログラマーが結合とカプセル化に感謝しているのは、少し劇的なことだと思います。結合は 2 つのモジュール間の依存度の尺度であり、結合が少ないほど良いと考えられます。既存のプロジェクトを別の新しいプロジェクトで使用します。

また、他のモジュールへの影響を気にせずに、特定のモジュール内で大規模な変更を加えたい場合にも、カプセル化の原理がこのソリューションを提供します。モジュールは相対的なものとして扱われます。独立しており、モジュール間のデータ通信はインターフェイスを通じて行われます。モジュールは相互の変数名を覗くことはなく、関数を通じて丁寧にリクエストを送信します。

プログラミング言語で使用される原則。多くの手続き型言語では、怠惰になりがちです。オブジェクト指向プログラミングでは、プログラマーがカプセル化の原則に違反することはありません。プログラミングでは、モジュールはオブジェクトに編成されます。これらのオブジェクトにはメソッドとプロパティがあります。抽象的な観点から見ると、メソッドはオブジェクトの動作であり、プロパティです。プログラミングの観点から見ると、メソッドは関数とプロパティです。理想的なオブジェクト指向システムでは、システムはオブジェクトと、メソッドを介したオブジェクト間の関係で構成されます。セットをベイクする場合、クラスはオブジェクトのプロパティを定義します。 Cookie オブジェクトの場合、クラスは Cookie メーカーになります。クラスのプロパティとメソッドは、呼び出されるメンバーです。またはメソッド メンバーと表現することでデータ メンバーにアクセスできます。


各言語では、さまざまなアクセス方法が提供されます。 PHP は C++ から概念を借用し、識別子の下に関数と変数を含めるためのデータ型を提供します。 PHP が最初に設計されたとき、そして PHP3 が開発されたときでさえ、PHP はコード 100,000 行を超える大規模プロジェクトを開発する機能を提供することを目的としていませんでした。 PHP や Zend エンジンの発展により、大規模なプロジェクトを開発できるようになりましたが、プロジェクトがどれほど大きくても、クラス内にスクリプトを記述すればコードを再利用できます。これは、特に自分のコードを他の人と共有したい場合には良いアイデアです。

オブジェクトのアイデアは、コンピューター サイエンスの中で最もエキサイティングな概念の 1 つです。最初はそれをマスターするのは難しいですが、一度マスターすれば、心で考えることが非常に自然に感じられるようになるでしょう。



http://www.bkjia.com/PHPjc/314098.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/314098.html技術記事著者: Leon Atkinson 翻訳: Haohappy オブジェクト指向プログラミングは、大規模なソフトウェア プロジェクト、特に複数の人々が共同作業するプロジェクトにソリューションを提供するように設計されています...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート