Linux за българи: Форуми

Програмиране => Web development => Темата е започната от: koleto в May 02, 2010, 13:56



Титла: [MVC] Template система
Публикувано от: koleto в May 02, 2010, 13:56
Аз имам един малък въпрос. Добра идея ли е във view файловете да се ползва template система? Не знам до колко това е свързано с MVC, но видях, че се обсъждат view файловете и реших да попитам, защото този въпрос ме тормози вече цели 2 седмици. Според мен не трябва, защото това добавя още едно отежняване на кода. Логиката е достатъчно разделена с MVC шаблона, така че не виждам нито едно предимство. А много хора държат да ползват template система. Вие какво мислите?


Титла: [MVC] Template система
Публикувано от: VladSun в Jul 26, 2010, 22:18
Според мен template системата се използва за да се постигне идеална (етсествено в идеалния случай) разделеност на отговорностите в един екип - разработчици и дизайнери. Template езикът има синтаксис, който определя и ограничава напълно възможностите за комуникация с данните - т.е. нарочно се ограничава достъпа до данните с цел да не се допускат груби грешки от страна на дизайнерите, които обикновено нямат добра представа от програмиране. От друга страна не е добре разработчиците да се занимават с всеки дизайнерски проблем, което поражда необходимостта от създаването на междинен език за двата подекипа.

Лично аз, винаги съм работил с що-годе "грамотни" дизайнери и съм избягвал този междинен език, който иначе би утежнил както разработката, така и производителността на продукта (в моя случай).


Титла: [MVC] Template система
Публикувано от: ivo3d в Jul 27, 2010, 02:18
Идеята "уж" на тия template системи, както каза VladSun е да имат готови да ги наречем функции, с които да могат лесно, без познания по програмиране да извъртат масиви с информация, да генерират форми и изобщо да могат да правят всякакви глезотии по данните, които идват от контролера. И на второ място - да не им се дава възможност да се пипа извън темплейта. Стигаме дотук с хубавите идеи, оттам нататък ми се губи логиката:

1. Аз до ден днешен като видя сайт със (най-често) smarty и бягам надалеч - така и не можах да свикна със синтаксиса. Общо взето с колкото дизайнери съм работил, на всичките им е по-лесно да научат за 1-2 часа малко php (примерно), колкото да могат да извъртят масив и да направят някоя проста проверка.

2. Всичките глезотийки са елементарни helper-и. Ако времето е толкова скъпо - има хиляди из нета, ако не - пишат се елементарно.

3. Трудно се разширяват, при smarty е абсурдно.

А отностно сигурността - така или иначе ако нямаш доверие на дизайнера, можеш да проверяваш какво се случва в темплейта. А щом е MVC, предполагам имаш някакъв клас, с който зареждаш темплейта - там спокойно можеш да си направиш така нещата, че в темплейта да не може да се пипа нищо друго освен данните, подадени от контролера. Ама това си е параноя, така или иначе някой ако иска да ти направи беля - ще я направи, не вярвам да работиш с такива хора. А за да счупиш нещо от view-то, трябва бая да си смъкнал от дамаджаната преди това.

Затова си ползвай сървърния език и html за темплейти, открадни си/напиши си няколко helper-а за повтарящи се досадни дейности и не го мисли :)

Поздрави,
Иво