06.08.2014, 14:42
|
Профессор
|
|
Регистрация: 14.03.2012
Сообщений: 1,808
|
|
Цитата:
|
У тебя просто видимо не было горького опыта, но шаблоны - это реально жизненно важная фича. У меня есть правило: если где бы то ни было идёт генерация строки для HTML (не важен её уровень сложности), то всегда нужно юзать только шаблон.
|
А можешь обьяснить почему? и какой шаблонизатор самый вкусный на данный момент?
__________________
Научу себя плохому
|
|
06.08.2014, 14:48
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
melky,
Цитата:
|
Цитата:
|
юзаю Gulp, потому, что Grunt уже не моден
|
пам пам пааам попахивает синдромом NIH (Not invented here)
|
Чот не пойму, NIH, если я правильно понял, это когда нравится велосипедить. А ты выделил "не моден", что соответствует хипстороголичеству.
Цитата:
|
P.S. шучу. angular - аху#@!нная штука, всё-таки.
|
Ангуляр больше всего недолюбливаю. Но немного учу, т.к. на будущей работе он может быть нужен.
Цитата:
|
я юзаю nodemon. вот nodemon.json
|
Спасибо, посмотрю.
Цитата:
|
только жёсткий диск с 5400 RPM даёт о себе знать - хренов тормоз.
|
Стоп. Оно жёсткий мучает?
Цитата:
|
зачем он тебе нужен?
|
Оно годное, я слышал. Особенно нравится, что оно перезапускать Ноду могёт.
Да и Илюша с кобезззой с ней довольно лихо управляются.
Цитата:
|
так говорят те, кто его не смог познать
|
Да. Мозг начал дымиться.
|
|
06.08.2014, 14:49
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
Даже если просто экспериментируешь с какой-нибудь новой штукой?
|
Заблуждение, что шаблоны это что-то сложное (исключение XSLT, в котором без подготовки хрен разберёшся).
Вот пример шаблона Snakeskin
{template helloWorld(name)}
<h1>
{if name}
Hello {name}!
{else}
<button>Sign in</button>
{/}
</h1>
{/}
Шаблон скомпилится в JS функцию и вызов в JS - это вызов функции helloWorld
helloWorld('koba')
1) Шаблон гарантирует защиту от XSS
2) Поддерживать шаблон просто как для прогера, так и для верстальщика
3) Шаблоны легко бить по файлам
4) Решение проблемы code-reuse
5) Отделение логики от представления
6) ???
7) PROFIT
http://screencast.com/t/iU7AgM6jvjaj
Цитата:
|
А можешь обьяснить почему?
|
Ответил выше.
Цитата:
|
И какой шаблонизатор самый вкусный на данный момент?
|
Тут можно начинать холивар Начни с чего-нибудь, а дальше сам решишь.
Последний раз редактировалось kobezzza, 06.08.2014 в 15:06.
|
|
06.08.2014, 14:50
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
kobezzza,
Цитата:
|
Я слышал, что изучение VIM способствует росту бороды
|
Ога, а ещё очки толще и джинсы уже становятся..
|
|
06.08.2014, 14:51
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
l-liava-l,
Цитата:
|
и какой шаблонизатор самый вкусный на данный момент?
|
Ну что за нубский вопрос? Очевидно, что Змеекож!
|
|
06.08.2014, 14:59
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
Ну что за нубский вопрос? Очевидно, что Змеекож!
|
Не, ну если провести беспристрастный анализ классических шаблонок (т.е. без data-binding), то ответственно заявляю, что готовящийся к релизу Snakeskin 4 объективно лучше всех известных JS аналогов.
|
|
06.08.2014, 15:03
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
kobezzza,
*поставил ЗК чуть выше в списке изучения*
|
|
06.08.2014, 15:09
|
sinistral
|
|
Регистрация: 28.03.2011
Сообщений: 5,418
|
|
Сообщение от Safort
|
Стоп. Оно жёсткий мучает?
|
всмысле. как ещё проверить, изменился ли файл? скорее всего по таймауту сверяется дата последнего изменения
Сообщение от kobezzza
|
Шаблон гарантирует защиту от XSS
|
{template ЗАНУДА()} с экранированием понятно, но что делать в заковыристых случаях?
<img src=LOL onerror=alert('XSS')>
это пример, на самом деле есть и намного хуже.
и от XSS в картинках шаблон не защитит ... нужно самому их перелопачивать.
{/template}
"доверяй, но проверяй", как говорится или "на шаблонизатор надейся, да сам не плошай"
Последний раз редактировалось melky, 06.08.2014 в 15:14.
|
|
06.08.2014, 15:16
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
с экранированием понятно, но что делать в заковыристых случаях?
<img src=LOL onerror=alert('XSS')>
|
Чёто я не понял, что здесь не обычного с чем не справится экранирование?
{template foo(val)}
<img src="{val}" />
{/}
foo('" onerror="alert(\'XSS\')') // всё будет проэкранировано и onerror не будет работать
Цитата:
|
{template ЗАНУДА()}
и от XSS в картинках шаблон не защитит ... нужно самому их перелопачивать.
{/template}
|
Гм.. приведи пример, я не понял
Последний раз редактировалось kobezzza, 06.08.2014 в 15:20.
|
|
06.08.2014, 15:21
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
melky,
Цитата:
|
всмысле. как ещё проверить, изменился ли файл? скорее всего по таймауту сверяется дата последнего изменения
|
ну не знаю, мб там вотчер какой. (Или вотчеры тоже по таймауту?)
|
|
|
|