私は最近、PHP のスケーラビリティーのためにコードを最適化する方法に関する記事を読んでいます。私が今日読んだ記事のいくつかは、追加のメソッドを使用してクラスからオブジェクトを単純に返すことを思いとどまらせていました。
基本的に、彼らはこう言います:
このようなクラスがある場合:
class myClass
{
public $something;
public function setSomething($val)
{
$this->something=$val;
}//function end
}//class end
$myClassInstance=new myClass;
クラスプロパティを取得したい場合は、次の$something
ようにする必要があります。
//echo $something from myClass
echo $myClassInstance->something;
そしてこれではありません:
//echo $something from myClass using an additional method (getSomething()) that returns the property
echo $myClassInstance->getSomething();
速度差があるからです。推奨されない方法は遅い ( $myClassInstance->getSomething()
) ため、推奨されません。
しかし、非常に多くの人がまだ推奨されない方法 (チュートリアル、コード例など) を使用しているのを目にします。なんらかの理由でプロパティをプライベートに設定する必要があるかどうかは理解できましたが、通常はそうではありません。
だから私の質問は、落胆した方法を使用することに欠けている利点や何かがありますか? もしそうなら、何?