Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
Nette Framework: Sessions

Borek Bernard aura:70
12. 5. 2009 0:37 Nový

RE: Nette Framework: Sessions

celé vlákno
Krásné zjednodušení oficiálního API! Něco na tom Nette bude :)
Daniel Kvasnička ml. aura:82
12. 5. 2009 8:37 Nový

RE: Nette Framework: Sessions

celé vlákno
$namespace->a = 'apple'; ...magic methods jsou tou nejlepsi cestou k write-only kodu :/
v6ak aura:72
12. 5. 2009 8:56 Nový

RE: Nette Framework: Sessions

celé vlákno
... pokud se používají nerozumně. Naopak, při rozumném použití to zvyšuje čitelnost. Nejsem pro kratší kód za každou cenu, ale proč psát $x->getElement('foo'), pokud jde o nějakou podobu mapy a tudíž zápis $x['foo'] vypadá logicky?
Mastodont
Mastodont (neregistrovaný) ---.newsfeed.sdlintl.com
12. 5. 2009 9:41 Nový

RE: Nette Framework: Sessions

celé vlákno
A proč tedy nepoužít přímo pole?

.. aplikace se běžně skládá z celé řady vzájemně nezávislých částí a pokud všechny mají k dispozici jen jedno pole, dříve nebo později dojde ke kolizi názvů ..
Co třeba $_SESSION['module']['variable']
v6ak aura:72
12. 5. 2009 9:52 Nový

RE: Nette Framework: Sessions

celé vlákno
Obecně se může hodit nějaká kontrola, dál pole nemá Observery apod.
David Grudl aura:76
12. 5. 2009 16:11 Nový

RE: Nette Framework: Sessions

celé vlákno
Což ale nefunguje, jak praxe prokázala. Proto je v Nette potřeba přistupovat přes nějaký jmenný prostor a neexistuje ani žádný "výchozí" jmenný prostor.
Mastodont
Mastodont (neregistrovaný) 85.132.159.---
12. 5. 2009 20:33 Nový

RE: Nette Framework: Sessions

celé vlákno
Nějaký odkaz na tu praxi, která něco prokázala, by nebyl? Já totiž takový problém nezažil ... díky.
David Grudl aura:76
13. 5. 2009 1:35 Nový

RE: Nette Framework: Sessions

celé vlákno
Například tohle http://jdem.cz/beud6
Daniel Kvasnička ml. aura:82
14. 5. 2009 8:22 Nový

RE: Nette Framework: Sessions

celé vlákno
No protoze na prvni pohled a bez studovani ejakeho kontextu pak neni poznat, jestli je $x pole nebo objekt a to prodluzuje cas, ktery je potreba na proniknuti do programu u cloveka, ktery kod vidi poprve (nebo po sto letech svuj vlastni ;-) )
v6ak aura:72
12. 5. 2009 9:42 Nový

Co ten Singleton?

celé vlákno
V třídy Environment si snad vždy vzpomenu na tvůj odpor k Singletonu a moji obhajobu (za určitých podmínek!): http://phpfashion.com/je-singleton-zlo#comment-13682
Mastodont
Mastodont (neregistrovaný) ---.newsfeed.sdlintl.com
12. 5. 2009 9:46 Nový

Re: Co ten Singleton?

celé vlákno
Když bych to řekl ošklivě: singletony používají ti, kteří se ještě nenaučili psát bez nich
:-)
David Grudl aura:76
12. 5. 2009 16:06 Nový

Re: Co ten Singleton?

celé vlákno
Proti singletonu realizovanému pomocí factory method nic nemám, vadí mi způsob popisovaný na stránce Wikipedia http://en.wikipedia.org/wiki/Singleton_pattern jako "tradiční".
v6ak aura:72
14. 5. 2009 7:13 Nový

Re: Co ten Singleton?

celé vlákno
Šlo mi hlavně o to, že Environment třeba není neměnná třída.
Jinak musím upřesnit, že nelze obecně říct, že schvaluji každý Factory-Singleton pro neměnnou třídu. Uvedený případ s Clock bych dnes už považoval za hraniční - záleží na míře použití Dependency Injection. Environment by mi vadil už tehdy.
N
N (neregistrovaný) ---.dsl.in-addr.zen.co.uk
12. 5. 2009 17:30 Nový

pekne, ale pro me nepouzitelne

celé vlákno
Vzhledem k tomu, ze to nepodporuje ukladani sessions do databaze, ale pouze do souboru, tak jako standardni PHP session handler.
David Grudl
David Grudl (neregistrovaný) ---.vodafone.cz
12. 5. 2009 17:38 Nový

Re: pekne, ale pro me nepouzitelne

celé vlákno
Podporuje, muzete si nastavit jakykoliv handler.
Jan Dolecek aura:43
2. 11. 2010 22:51 Nový

Concurrency

celé vlákno

Jak se zachova Session pri soubeznem zapisu, napr ze dvou AJAX pozadavku?
Klasicke PHP session si s tim moc dobre neporadi, coz muze zpusobovat (a mne zpusobilo) osklive problemy.

Napr situace dvou AJAX pozadavku, z nichz jeden se zpracovava dlouho. Behem toho uzivatel klikne na dalsi ajax request, ktery se zpracuje rychle.

request 1: sleep(5); $namespace->x = 1; sleep(5);
request 2: $namespace->y = 1;

Klasicke PHP session nacte session na zacatku a na konci jej ulozi, tedy:

req1: (load) ----------- (assign) ------------ (store)
req2:             (load) (assign) (store)

Vysledek: hodnota requestu 2 se ztrati.

Poradi si s timto Nette samo o sobe, nebo je mu potreba nejak pomoci?
Dik za radu

Zasílat nově přidané příspěvky e-mailem