🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #232047

Re: Laravel - jak to to działa?

#232047
From: Marek S
Date: Thu, 06 Dec 2018 21:43
36 lines
2666 bytes
W dniu 2018-12-05 o 21:41, Rafal Podsiadly pisze:

> @Marku czytałeś https://laravel.com/docs/5.7/facades ?
> 

Tak, oczywiście. Napisałem, że poległem analizując realny kod. Dotarłem 
do etapu kiedy fasada nie robi nic innego jak tylko zwraca string. 
Bazując na przykładzie z dokumentacji jest to:

  protected static function getFacadeAccessor() { return 'cache'; }

Ale string przecież nie wykona żadnej operacji cache'owania więc 
funkcjonalność z Cache::get() z pewnością niczego tu nie wykona.

No to lecimy dalej. Ten string wędruje do Service Container'a. A co on 
takiego robi? Zagląda do pokrótce tablicy (UserRepository) i wywołuje 
find. Czyli znów tu kodu naszego Cache::get() nie znajdziemy.


Znów lećmy dalej. W tablicy models znajduje się wreszcie obiekt 
reprezentujący wołaną metodę. Fajnie, ale tablica obiektów nie ma nic 
wspólnego z kodem źródłowym klas tych obiektów. Więc znów jesteśmy w 
czarnej d... Ale przynajmniej wiemy czego szukać.

Teraz trzeba zajrzeć od drugiej strony i znaleźć miejsce, w którym ta 
tablica będzie wypełniana obiektami. Zapewne będzie trzeba rozpocząć 
poszukiwania od index.php i schodzić coraz niżej.

W ten sposób cały wieczór będę szukał źródeł Cache::get albo Route::get 
itd. Czytanie dokumentacji zero pomogło. To jest tylko ogólnikowe bla 
bla bla. Do programowania wystarczy ale nie pozwoli na wgryzienie się w 
źródło. Więc ponawiam pytanie z wątku otwierającego.

-- 
Pozdrawiam,
Marek
Technical Details
Message-ID: <puc568$u7g$1@node1.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <ptsctv$cfj$1@node1.news.atman.pl> <1v0xvyvpzdfv7$.1rpu9f5pj0855.dlg@40tude.net> <pu1k56$dd4$1@node2.news.atman.pl> <h7gl5chedxpp.1jwtzx4lghnpe$.dlg@40tude.net> <pu6m4i$up$1@node2.news.atman.pl> <7367cb98-1e11-4ea9-9b5a-846c6259d56b@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: Marek S <precz@spamowi.com>
Newsgroups: pl.comp.lang.php
Subject: Re: Laravel - jak to to działa?
Date: Thu, 6 Dec 2018 22:43:25 +0100
Organization: ATMAN - ATM S.A.
Lines: 36
Message-ID: <puc568$u7g$1@node1.news.atman.pl>
References: <ptsctv$cfj$1@node1.news.atman.pl> <1v0xvyvpzdfv7$.1rpu9f5pj0855.dlg@40tude.net> <pu1k56$dd4$1@node2.news.atman.pl> <h7gl5chedxpp.1jwtzx4lghnpe$.dlg@40tude.net> <pu6m4i$up$1@node2.news.atman.pl> <7367cb98-1e11-4ea9-9b5a-846c6259d56b@googlegroups.com>
NNTP-Posting-Host: 89-70-94-204.dynamic.chello.pl
Mime-Version: 1.0
X-Trace: node1.news.atman.pl 1544132616 30960 89.70.94.204 (6 Dec 2018 21:43:36 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Thu, 6 Dec 2018 21:43:36 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.3.2
In-Reply-To: <7367cb98-1e11-4ea9-9b5a-846c6259d56b@googlegroups.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit