Temat: ZF + Smarty
Maja Miarecka:
Z mojego puntu widzenia to śmietnik, webmaster, który będzie się bawił w warstwę prezentacji złapał się za głowę, jak zobaczył, jak wygląda kod. Od wielu lat są wprowadzane pewne standardy oddzielania warstwy prezentacji od logiki (jak sama nazwa mvc wskazuje), na tę chwilę Zend_View z jego phtml-ami widzę jako powrót do praktyk z epoki php3.
Chyba kod z którym pracowałaś nie był napisany zgodnie ze wzorcami, lub w ogóle nie był to kod napisany w ZF skoro twierdzisz, że logika była wymieszana z prezentacją - pogratulować programiście.
Smarty:
{if ! $saWartosci}
<div>Przepraszamy, nie ma wyników.</div>
{else}
<table>
{foreach from=$result item="row"}
<tr>
<td>{$row.imie}</td>
<td>{$row.nazwisko}</td>
<tr>
{/foreach}
</table>
{/if}
Zend_View / zwykły php:
<?php if (! $this->saWartosci): ?>
<div>Przepraszamy, nie ma wyników.</div>
<?php else: ?>
<table>
<?php foreach ($result as $row): ?>
<tr>
<td><?php echo $row->imie ?></td>
<td><?php echo $row->nazwisko ?></td>
<tr>
<?php endforeach ?>
</table>
<?php endif ?>
Jak widać, podstawowe rzeczy, if i for each nie różnią się zbytnio od siebie w obu prezentacjach. Ale problem wychodzi później, tak jak już pisał Łukasz wcześniej: Layout, Helpery, Formy itp Po co w ogóle zaciągać ZF jeśli ma się zamiar używać smarty, usuwamy całe ficzery, które Zend nam daje - tutaj z naciskiem na Zend_Form (walidacje, edycja itp)
Być może ludzie, którzy używają smarty nie wiedzą jakie ograniczenia sobie stawiają rezygnując z bibliotek, które daje ZF. Nie wiedzą z czego rezygnują.
Artur Świerc edytował(a) ten post dnia 26.03.10 o godzinie 08:26