Session public getRequest a getResponse

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
h4kuna
Backer | 730
+
0
-

Ahoj,
v poslední době zjišťuji, že často když požívám Session tak potřebuji Request a Response. Všechny tři objekty si předávám v konstruktoru a nebo pomocí inject.

A jde mi o to že Session je má v sobě. Bylo by možný přidat public metody getResponse a getRequest? Nebo to je něco proti něčemu?

Editoval h4kuna (4. 12. 2012 10:58)

Filip Procházka
Moderator | 4668
+
0
-

Ano, je to přímá cesta ke špagheti kódu.

juzna.cz
Člen | 248
+
0
-

To, ze Session ma v sobe nejaky request a response je spise implementacni detail a je to tedy pouze veci te konkretni implementace. Z principu zapouzdreni (encapsulation) na to nemas sahat.

Navic, dependency injection je o zjevnem predavanim zavislosti. Kdyz si trida rekne, ze potrebuje jenom Session, tak neni vubec zjevna jeji zavislost na Request a Response. Pokud by ses rozhodl Session implementovat jinak (jeden z prikladu muze byt mock pro testovani), tak by ses pak zacal hodne divit, ze ti neco prestalo fungovat.

Editoval juzna.cz (4. 12. 2012 13:02)

h4kuna
Backer | 730
+
0
-

Ok