まあ、静的メソッドをPHPで使用しないほうがいいと聞いていますが、それはある程度理解できますが、私には混乱があります。私が知りたいことは:PHPクラスをインスタンス化するとどうなりますか?
私は、私はアプリケーションを書く、私は何百ものクラスを定義する(または既に数百の異なるクラスを含むフレームワークを使用する)、私は私は小さなタスクごとにクラスを作成する必要があるかどうかわからないので、私はすべてを処理するためのクラスを作成する特定のアイテム(例えばブログ投稿)のCRUDタスクであり、このクラスは表示、保存、編集などを処理します。そのような場合、毎回クラスをインスタンス化すると、ほとんどのメソッドを含むオブジェクトが作成されますその要求には、その必要があります。 私は何を求めようとしているのでしょうか。
そんなことをするのが賢明ですか? メソッドを含むクラスを作成し、それぞれのリクエストでは使用しないメソッドを多く含み、非静的メソッドとして定義するので、オブジェクト全体をインスタンス化する必要があるたびに?
Laravelはコントローラーのように、特定のルートグループに関連するすべてのタスクを処理する非静的メソッドをすべて定義し、それらのメソッドの1つまたは2つにアクセスするたびにコントローラ全体をインスタンス化します。
時間と忍耐力に感謝します。 私はそれを感謝します。
一般に、 "行動"ではなく、あなたがデザインするすべての "もの"に対してクラスを実装します。行為におけるオブジェクトのインスタンス化にはコストがかかりますが、それはクラスに実装されているメソッドの数やサイズに大きく依存しません。多くの場合、コードの可読性と再利用性の利点はより重要です。 – arkascha