ホームページ > バックエンド開発 > PHPチュートリアル > OOP フォームを避ける、POP アイデア_PHP チュートリアル

OOP フォームを避ける、POP アイデア_PHP チュートリアル

WBOY
リリース: 2016-07-13 17:25:50
オリジナル
876 人が閲覧しました

OOP の形式を避け、POP の考えを取り入れてください
長い間技術的な記事を投稿していなかったので、今日兄弟が 21PHP でこの投稿を投稿しているのを見て、学習を強化するのに少し役に立ちました。 OOP
の------- -------------------------------------- ---------- -
OOPの形式を避け、POPの考え方を
PHPのOOP(オブジェクト指向プログラミング)のサポートの強化とプログラミングのアイデアの開発により、PHPはますます増えていますプログラマーは OOP の世界に入りました。簡単な学習を通じて、ほとんどのプログラマーは OOP プログラミングの基本スキルをすぐに習得できます。プログラマーが作成したコードには、class や new などの文字列がますます増えています。ある種の OO フォームに変換する場合、PO はどのような
プログラミングの罠を考えていますか?
POP 時代のプログラマーは、家のすべてのドアの価格を計算するために、次のような関数を作成します:
。 /*********************************************
関数:priceOfHouseDoor($num, $price )
機能: すべてのドアの価格の合計を計算します
パラメータ: $num ドアの数、$price 各ドアの価格
備考:surfchen @ http://www.yubeinet.com/
**** ***********************************/
function PriceHouseDoor($num,$price)
{
return $num*$price;
}
echo PriceHouseDoor(2,5);// 価格を出力する
または単に新しい値を実行しますprocess:
Code:
$doors= 2;//ドアの数
$price=5;//各ドアの価格
echo $doors*$price;//出力価格
これは OOP を理解した後の典型的な POP です。 , 多くの人がこの関数の実装を変更する可能性があります。おそらくプログラマは次のように書くでしょう:
コード:
class house
{
/*******************************************

関数: getDoorPrice ($num,$price)
関数: すべてのドアの価格の合計を計算します
パラメーター: $num はドアの数、$price は各ドアの価格
備考:surfchen @ http://www.yubeinet.com /
* ****************************************/
function getDoorPrice($num,$price)
{
return $num*$price ;
}
}
$house=new house;
echo $house->getDoorPrice(2,5);//出力価格
このコードが OOP の代表を使用していることがすぐにわかります- クラスとインスタンス さて、これはオブジェクト指向プログラミングですか?
詳しく見てみると、このクラスは実際には上記のpriceOfHouseDoor($num,$price)関数のオブジェクト指向形式であることがわかりました
それでは、説明しましょう。オブジェクト指向プログラミングとは正確には何ですか? 私の理解では、オブジェクト指向プログラミングには 2 つの中心的な内容があります。1 つはクラスであり、もう 1 つはインスタンスです。インスタンスの属性 (値) とメソッド (関数) は、それぞれ個人の固有のコンテンツとアクションです。
上の 1 つのメソッドを見てみましょう。 getDoorPrice($num,$price) という 2 つのパラメータが導入されました。1 つは家のドアの数で、もう 1 つは家のドアの価格です。このメソッドを使用すると、これら 2 つの値が得られることがわかりました。現実の生活では、家のドアがその家と何の関係もないというのは理解できません...ご存知のとおり、OOP は実際には私たちの現実の縮図です。つまり、OOP では家と家はつながりがなく、理解できないのです。 では、実際の OO を使用して上記の機能を実現するにはどうすればよいでしょうか。
コード:
class house
{
var $ door;// ドアの数
var $pricePerDoors;// 各ドアの価格
function setNumOfDoors($num){$this->doors=$num;}//ドアの数を設定します
function setPricePerDoor($price) {$this->pricePerDoors=$price;}//各ドアの価格を設定します
/*************
*ドアの価格を取得*
*************/
function getDoorPrice()
{
return ( $this->doors)*($this->pricePerDoors);
}
}
$house=new house;
$house->setNumOfDoors(2);// ドアの数を設定します
$house->setPricePerDoor( 5);//各ドアの価格を設定します
echo $house->getDoorPrice();//出力
上記のコードでドアの数と家の価格が結合されていることが明確にわかります。本当のオブジェクト指向
だと思いませんか? ^_^




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

www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/532013.html技術記事 OOP の形式を避ける POP Thought は長い間技術的な記事を公開していませんでしたが、今日、兄弟が 21PHP でこの投稿を投稿したのを見つけました。これは OOP の学習を強化するのに役立ちます。 -------------...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート