Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Warstwa prezentacji danych
Forum PHP.pl > Forum > PHP
Luciano
Czeka mnie nie duzy projek, ktory ma dostarczac wewnetrzny interface do dzialajacej juz aplikacji. Ma on na celu umozliwic kontrole procesow zachodzacych w aplikacji ludzia odpowiedzialny a nia. Jako, ze nie mam
duzego doswiadczenia w generowaniu htmla (zazwyczaj pisze cos miedzy Oraclem a Klientem flashowym dostarczajac mu xmla z danymi).
Czy moglby ktos podac jakiegos linka badz wytlumaczyc po krotce winksmiley.jpg jak 'najczysciej' tworzyc kod w malych projektach. Wydaje mi sie ze zatrudnianie SMARTy badz jakis FW jest przyslowiowa bazuka na muche. Ma to byc lekkie i przejzyste. Stanowczo chce uniknac kodu w stylu
<?php
if($cos){ ?>
<html>...ble ble
<?php } ...
?>
I tym podobnym rozwiazania ktore w 5 min zmniejsza 10 krotnie przejzystosc kodu. Czy sa jakies paradygmaty powszechnie stosowane jak elegancko odzielic warstwe prezentacji od samej mechaniki aplikacji dla niewielkich
projektow - tak aby bylo szybko ladnie i przyjemnie.

Pozdrawiam
thornag
Stworzyc templaty w php, i albo bezposredniow nich odwolywac sie do zmiennych albo zrobic parser, najwazniejsze w tym wszystkim to uzywanie tylko i wylacznie prostych kontrukcji (if/else, foreach itp.).

Przygotowywujesz dane, przekazujesz je na gotowy templejt i pozniej wyswietlasz w templejcie, po krotce to samo co w Smarty tylko ze bez smarty a w prostej formie. Poszukaj na webcity.pl, jest tam artykul o szablonach w php.
nasty
A moze MVC ?
Luciano
Dzieki za podpowiedzi. Mysle, ze rozwiazanie na ktore sie zdecyduje bedzie zasilanie szablonow XSL dynamiczny XMLem.. teoretycznie w moim mniemaniu sprawia to wrazenie eleganckiego odseparowania 'wyluskiwania danych' z ich prezentacja.
dr_bonzo
Cytat
Wydaje mi sie ze zatrudnianie SMARTy badz jakis FW jest przyslowiowa bazuka na muche.

a XSL + XML to nie to samo?

To juz lepiej wziasc Smarty.


PS. "bazooke?" biggrin.gif to byla armata, aletez fajnie brzmi
erix
Cytat
wziasc


Mam jakieś dziwne uprzedzenie do Smartow tongue.gif

Obecne przeglądarki (podkreślam przeglądarki, czyli nie IE) bez problemu radzą sobie z parsowaniem XSLT-ów, to po co jeszcze obciążać dodatkowo serwer?

Jeśli by to był IE, to można ewentualnie jakiś osobny skrypt parsujący zatrudnić.
sf
Cytat(erix @ 19.10.2006, 17:11:07 ) *
Obecne przeglądarki (podkreślam przeglądarki, czyli nie IE) bez problemu radzą sobie z parsowaniem XSLT-ów, to po co jeszcze obciążać dodatkowo serwer?


Obciążenie serwerów? Przecież jest cache winksmiley.jpg
jarrod
Cytat(erix @ 19.10.2006, 17:11:07 ) *
Obecne przeglądarki (podkreślam przeglądarki, czyli nie IE) bez problemu radzą sobie z parsowaniem XSLT-ów, to po co jeszcze obciążać dodatkowo serwer?

1) - W 7 jest już ok.
2) - Dlatego bo IE ma największy udział w rynku więc jest największe prawdopodobieństwo że użytkownik czytający tą stronę będzie korzystał właśnie z tej przeglądarki. I niestety nic na to nie poradzimy...
Luciano
Cytat(erix @ 19.10.2006, 16:11:07 ) *
Obecne przeglądarki bez problemu radzą sobie z parsowaniem XSLT-ów, to po co jeszcze obciążać dodatkowo serwer?


Oczywiscie, ze tak ale do tego trzeba przygotowanego pliku XML a ja go generuje dynamicznie. Dane do bazy naplywaja nieustannie wiec musial bym wymsylic jakis bardzo przebiegly sposob zapisywania XMLi na dysku aby dostarczac danych przez przeklaman. Dlatego wiec najwygodniej dla mnie jest dostarczyc XMLa w postaci zmiennej i co sie z tym wiaze, przepuscic go przez PHPowy XSL. Tak czy to przegladarka klienta czy server musial by to zrobic. Maszyna na ktorej bedzie to dzialac ma 2GB ramu a cpu to P4 2,8 wiec nie przejmowal bym sie ta kolejna mili sekunda.

Pozdrawiam.
ikioloak
Jesli nie chcesz zaprzagac zadnego systemu szablonow, ale rowniez oddzielic warstwy, nie musisz robic sieczki
Kod
<?php
if($cos){ ?>
<html>...ble ble
<?php } ...
?>

Jest skladnia alternatywna, ktora nadaje sie jak najbardziej do takich zastosowan. Wykorzystywana jest m. in. w Symfony oraz Code Igniter.
thornag
Jak dla mnie tego tupu skladnia alternatywna i tak jest sieczka, bo nadal miesza logike z prezentacja. Jesli ta warstwa prezentacji ma byc malo skomplikowana to dla mnie najlepszym wyjsciem sa proste szablony php, z logiki przekazujesz do nich tylko tablice z danymi, a reszta w szablonie, jest czaysto podstawowwe ify, zadnych polaczen z baza zadnych skomplikowanych petli nic. A wydaje mi sie ze szablon php nadal bedzi elekki i przejrzysty, do tego nie wymaga parsera.
ikioloak
thornag tez w tym momencie mam na mysli samodyscypline programisty, tzn w czesci prezentacyjnej bedzie uzywac rzeczy do wyswietlania danych, a nie bedize laczyc sie z baza itp. W zasadzie to nie wiem jak wyobrazasz sobie twoje szablony w php, ale bez 'sieczki' skladni alternatywnej lub natywnej.
thornag
Tak jak pisalem, poki beda to proste if/else foreach itp (jak np w Smarty) to sieczki nie bedzie, mozna z powodzeniem wykorzystywac skladnie alternatywna, jesli ktos powciska miedzy jeden div a drugi polaczenie z baza danych to ani skladnia alternatywna ani nic innego nie pomoze.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.