Post
#1
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Przedstawiam Wam dziś klasę widoku - jest to alternatywa dla systemów szablonów. Dzięki tej klasie możecie łatwo oddzielić logikę aplikacji od jest wyglądu.
Opis i przykłady użycia znajduje się tu: http://nospor.pl/klasa-widoku.html Download (klasa wraz z przykładową aplikacją): http://nospor.pl/download/idfolder/31/ |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%)
|
Cytat Chcesz mi powiedzieć, że inne systemy szablonów, jak nie ma zmiennych to plują wyjątkiem? Chyba za długo jeździłem na smartim (IMG:style_emoticons/default/wink.gif) Tak, albo przynajmniej udostępniają coś w rodzaju strict mode, które można sobie włączyć. Jeżeli jakiś projekt tego nie robi, w mojej ocenie nie jest warty straty czasu.Cytat W 95% procent przypadków tak właśnie robię. Tworzę jeden widok i z niego korzystam. Zdarzają się jednak przypadki, gdy potrzebuję nowego widoku, który nie jest "zaśmiecony" zmiennymi, które poprzypisywano w międzyczasie. Wówczas tworzę nowy widok. CopyConstructor/sklonowanie + jakaś metoda clear()? - nadal lepsza metoda, niż zmienne statyczne.Cytat [...] która nic prócz kobylastości i braku kompatybilności w nowszych wersjach, nie wnosiła. Bez testów, bez jasno określonych zależności musimy uwierzyć Ci na słowo, że u Ciebie tak nie będzie. A ja już zauważyłem, że klasa View ma chyba zależność* do klasy Registry i stałej REG_MSG (patrz linia #89**).Cytat Głównym zadaniem publikacji było pokazanie prostej i szybkiej alternatywy, by pokazać samą idee, że można pisać widok również bez niepotrzebnego zaprzęgania dzikich kobylastych klas Tutaj szczerze powiedziawszy mam pewien problem, bo nie wiem czym do końca jest zaprezentowany kod. Na pewno nie jest to widok (jak rozumiem chodziło Ci o warstwę widoku w kontekście MVC i pochodnych?) bo widok to pojęcie znacznie szersze niż szablon (widok ? szablon). Nie jest to też typowy system szablonów. Biblioteka wspomagająca pisanie szablonów w PHP? Też nie do końca, bo wprowadza i wymusza już pewną architekturę do projektu, wprowadza elementy z szablonami niezwiązane. Nie wprowadza natomiast żadnych "helperów". Webowy framework? Też nie bo właściwie zajmuje się tylko szablonami. Sam napisałeś o tym "Będzie to taki mini pseudo MVC", ale mini pseudo MVC nie nadaje się do normalnego użycia*** - lepiej już skorzystać z pełnych frameworków.* w dodatku, jak to zawsze określam, taka z dupy zależność, bo nijak nie da się jej podmienić. IoC FTW! (IMG:style_emoticons/default/wink.gif) ** jakbyś udostępnił jakieś repozytorium to mógłbym podlinkować do konkretnego pliku, konkretnej linii z konkretnej rewizji - ktoś kto odwiedzi ten wątek za tydzień, gdy już to poprawisz mógłby przynajmniej spojrzeć co było nie tak. *** pomijam tutaj Ciebie, bo pisałeś to na własny użytek, pod własne projekty - tam mogło to spisywać się rewelacyjnie. Ten post edytował Crozin 14.06.2013, 14:03:21 |
|
|
|
nospor [klasa]Klasa widoku 13.06.2013, 07:47:27
Spawnm ViewPluginBase dał bym jako abstract.
$tpl na... 13.06.2013, 08:33:52
pyro Cześć.
A ma coś lepszego / innego niż istniejące ... 13.06.2013, 08:35:21
nospor CytatViewPluginBase dał bym jako abstract.A ma to ... 13.06.2013, 08:44:45
Dipter 1. Wszystkie właściwości klasy są statyczne, za wy... 13.06.2013, 14:37:18
Crozin 1. Brak wsparcia dla PSR-0 oraz Composera; Brak re... 13.06.2013, 15:09:42
nospor @dipter
ad1) Mi pasuje tak.
ad2) Pewnie masz racj... 13.06.2013, 15:31:53
Dipter Cytat@dipter
ad1) Mi pasuje tak.
ad2) Pewnie masz... 13.06.2013, 16:05:09
nospor ad1) Wyjaśni mi wkońcu ktoś o jakich tu kłodach mo... 13.06.2013, 16:13:07
Crozin CytatNie ma psr, nie ma composera. Brak publiczneg... 13.06.2013, 16:57:02
Spawnm Cytatjak php5.3 będzie standardem, to zacznę tego ... 13.06.2013, 16:58:34
nospor CytatTobie chyba nie muszę tłumaczyć wyższości wsz... 13.06.2013, 17:47:31
Crozin CytatO ile w takim linuxie to jest zajebista spraw... 13.06.2013, 20:44:30
nospor CytatMoże jeszcze mi powiesz, że o narzędziach do ... 14.06.2013, 07:38:46
nospor CytatTak, albo przynajmniej udostępniają coś w rod... 14.06.2013, 17:12:09
Crozin CytatMoim głównym celem było pokazanie, głównie dl... 14.06.2013, 19:27:12
nospor CytatIMO jeżeli chciałeś zademonstrować przykład u... 17.06.2013, 11:42:06
uki8877 OK, bardzo mi sie spodobala ta klasa i chcialbym ... 28.05.2016, 14:52:50
viking Poczytaj troszkę podstaw m.in. jak stosować namesp... 28.05.2016, 15:23:33
nospor CytatCall to undefined method Db::prepare()Przecie... 29.05.2016, 22:07:28 ![]() ![]() |
|
Aktualny czas: 9.12.2025 - 14:04 |