2016-05-24 4 views
0

ファサードが良くないと読んでいます。私はそれが正しいかどうか分かりません。私はLaravelがそれらの多くを使っていることも読んでいます。さらに、私はルーメンでそれらをオフにすることができることをお読みしました。 "ターンオフ"は正しい言葉ではないかもしれません。ファサードなしでLaravel 5を使用することはできますか?

ファサードでLaravelを使用する必要がありますか?私がファサードを使用しない場合、これは最初にLaravelを選んだのではないでしょうか?

答えて

3

あなたはファサードを使用する必要はありません。 https://laravel.com/docs/5.1/facades

チェックドキュメントは、ちょうどあなたが必要なものを得るためにappヘルパーを使用します。

app('router'); 
app('config') 

またはIoCを使用することができます。たくさんの方法があります。

+0

が、それは何らかの形で開始するLaravelを選ぶの目的を敗北していますか? – johnny

+0

@johnnyナー、そうではありません。これはORMを使うようなものです。 :) – Danny

+2

@johnnyはまったくではなく、学習曲線を緩和するための文法的な砂糖です。多くの人にとって、学習の初期段階でのIoCと依存性の逆転の概念の導入により、Laravelは理解の容易さの点でSymfonyと同程度になります。もちろん、この「砂糖」と一緒に、かなりの量の批判的なコードが出てきます。Laravelを初めて学んだ人たちの学習曲線が間違っていても間違いなく簡単です。 –

0

実際、アプリでファサードを使用する必要はありません。各ファサードについてFacades class referenceを見ると、この表のクラスを見つけることができます。たとえば、DBファサードの代わりにIlluminate\Database\DatabaseManagerを注入して、その方法を使用することができます。あなたが書くことができます

DB:beginTransaction(); 

とクラスを注入し、クラスのプロパティに割り当てる:

あなたが使用するファサードを使用して

$this->db->beginTransaction(); 
関連する問題