プロセス指向セクション 1 - オブジェクト指向プログラミング

WBOY
リリース: 2016-07-29 08:34:59
オリジナル
788 人が閲覧しました

+------------------------------------------------ --------------------+
| = この記事は <<コア PHP プログラミング>> の章に関する Haohappy のメモです
|翻訳 + 個人的な経験
| = 不必要なトラブルを避けるため、転載はご遠慮ください
| = 批判や修正を歓迎し、すべての PHP 愛好家と一緒に進歩することを願っています
| = /blog.csdn.net/haohappy2004
+--------------------------------------- - ----------------------------------+
*/
セクション 1 -- オブジェクト指向プログラミング
オブジェクト指向プログラミングは、大規模なソフトウェア プロジェクト、特に複数の人が関わるプロジェクトにソリューションを提供するように設計されています。ソース コードが 10,000 行以上になると、モジュールを変更するたびに望ましくない副作用が発生する可能性があります。第一次世界大戦前のヨーロッパのようなものです。
//haohappy 注: これは、モジュール間の相関性が高すぎ、相互依存性が強すぎることを意味します。
ログインを処理するモジュールを想像してください。クレジット カード処理モジュールがそのデータベース接続を共有できるようにすることは、別のデータベース接続を作成するコストを節約するという目的ではありますが、変数の 1 つの名前が変更されると、ログイン処理モジュールが変更されることがあります。この 2 つが切断されると、クレジット カード モジュールの処理でエラーが発生し、その結果、請求書を処理するモジュールでエラーが発生する可能性があります。そのため、システム内のすべての無関係なモジュールでエラーが発生する可能性があります。ほとんどのプログラマが結合とカプセル化に感謝しているのは、少し劇的なことだと思います。結合は 2 つのモジュール間の依存度の尺度であり、既存のプロジェクトのモジュールから結合を取り除き、使用できるようにしたいと考えています。
また、他のモジュールへの影響を心配することなく、特定のモジュール内で大規模な変更を行うこともでき、モジュールは比較的独立したものとして扱われ、モジュール間のデータ通信が可能になると考えています。モジュールは相互の変数名を覗くことはなく、関数を通じて丁寧にリクエストを送信します。
カプセル化は、どのプログラミング言語でも使用できる原則であり、多くの手続き型言語では怠惰になりがちです。オブジェクト指向プログラミングは、プログラマがカプセル化の原則に違反しない方法です。 プログラミングでは、これらのオブジェクトはメソッドと属性を持ちます。抽象的な観点から見ると、メソッドはオブジェクトの動作であり、属性はオブジェクトの特性です。プログラミングの観点から見ると、メソッドは関数であり、プロパティは変数です。理想的なオブジェクト指向システムでは、各部分は次のようになります。システムはオブジェクトと、メソッドを介したオブジェクト間の関係で構成されます。
クラスは、一連の Cookie オブジェクトをベイクする場合、そのプロパティとメソッドになります。クラスは呼び出されるメンバーです。これは、データ メンバーまたはメソッド メンバーと表現できます。PHP は、C++ から概念を借用し、識別子の下に関数と変数を含めるデータ型を提供します。 PHP が最初に設計されたとき、そして PHP3 が開発されたときでさえ、PHP はコード 100,000 行を超える大規模プロジェクトを開発する機能を提供することを目的としていませんでした。 PHP や Zend エンジンの発展により、大規模なプロジェクトを開発できるようになりましたが、プロジェクトがどれほど大きくても、スクリプトをクラス内に記述すればコードを再利用できます。これは、特に自分のコードを他の人と共有したい場合には良いアイデアです。
オブジェクトの考え方は、コンピューターサイエンスの中で最もエキサイティングな概念の 1 つです。最初はそれをマスターするのは難しいですが、一度マスターすれば、心で考えることが非常に自然に感じられるようになるでしょう。
上記はプロセス指向のセクション 1 - オブジェクト指向プログラミングを紹介しており、プロセス指向の内容も含めて、PHP チュートリアルに興味のある友人に役立つことを願っています。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート