PHPで多くの関数(一種の名前空間)を組み合わせるためにOOPを使うのですか?

class oop performance php

私はPHPを使用していますが、たくさんの関数を1つのクラスにまとめるのはどれほど悪い習慣なのでしょう。 私はそれがクラスの目的ではないことを認識していますが、私がこれをする理由は名前空間を提供することです。 たとえば2や3というよりも、PHPスクリプトの実行時に10クラスを起動するとしたら、どのような影響がありますか。

  4  1


ベストアンサー

phpのバージョンが5.3未満の場合(そしておそらくあなたは名前空間を使用できないので)、次のようなものを使用できます。

phpマニュアルからコピーされています)

ある意味でクラスの機能、機能のグループ化と言えます。

これにはパフォーマンス関連の問題はありません(何百万回も実行することができ、気付かないこともありません – ランタイムコストはかかりません、わずか1分の追加解析コストがあり、これはごくわずかです)。 現代のphpフレームワークは大量のコードを取り込み、内部的に多くのオブジェクトを作成します – phpのパフォーマンスについては心配しないでください、データベースのパフォーマンスはほとんどの場合最初にあなたに打つでしょう。 あなたのコードが読みやすくそして保守可能であることを確かめてください(そう、特にphpコード;))そしてそれが機能をグループ化することを意味するならそれをしてください。

「97%の時期尚早の最適化はすべての悪の根源です」、特にあなたがウェブページをやっていて核のシミュレーションをしていない時は;)

編集:パブリックと静的はphp5のみです、php <5ではあなたが試すことができます:

6


10個のクラスをロードするのが遅すぎるというパフォーマンスの心配があるなら、PHPを使うべきではありません。

少なくとも、APCのようなオペコードキャッシュを使用してください。そうすれば、クラスをロードすることはまったく負担になりません。

3


あなたは、PHPが最近の時点で、ファーストクラスの名前空間をサポートしていることを知らないかもしれません:http://php.net/language.namespaces。

0


タイトルとURLをコピーしました