Jump to content
ArtemPitov

Шаблонизаторы SASS LESS

Recommended Posts

Доброго времени суток 

 

Возник вопрос по поводу шаблонизаторов СSS, немного почитал о них, синтаксис весьма интересный и простой, кто работал SASS / LESS, на практике он сильно упрощает жизнь  ?

 

ЗЫ // Какие Вы можете посоветовать шаблонизаторы PHP и стоит ли вообще использовать их в быту ?  

Share this post


Link to post
Share on other sites

ЗЫ // Какие Вы можете посоветовать шаблонизаторы PHP и стоит ли вообще использовать их в быту ?  

PHP сам по себе язык "шаблонизатор"

Даже не вздумайте использовать что то "другое" тем более смарти

Разного рода шаблонизаторы используют дилетанты в проектировании архитектуры ПО

Share this post


Link to post
Share on other sites

Спасибо, я о PHP примерно тоже думал  :-)

Share this post


Link to post
Share on other sites

пробовал sass, но на уровне "поиграться". интересная штука, но мне применять пока негде.

пробовал less - не понравился. не такой удобный, как sass, как по мне.

Share this post


Link to post
Share on other sites

LESS . Представьте себе вы в в контроллере вместо того чтоб присвоить 1 раз переменную $color = '#000' дублируете ее 100 раз. А Less помогает этого избежать.

SASS. так же включает в себя переменные и еще он упрощает css , основываясь на вложенности

Шаблонизаторы PHP , я кардинально не согласенс выше сказанным мнением. Шаблонизаторы - это удобно, и мне в 100 раз удобней прописать знак = чтоб сделать экранирование, кеширование статитики  и тд..тп....

Edited by timedontwait

Share this post


Link to post
Share on other sites

Если говорить о продуктивности, то можно заговорить не про шаблонизаторы, что под большим вопросом на мой взгляд в принципе, а о фреймворках. Они уменьшают время и стоимости как создания, так и поддержки продукта. Например yii2 весьма замечателен, но к opencart он имеет весьма посредственное отношение :)

Share this post


Link to post
Share on other sites

Sass и Less - это никаким боком не шаблонизаторы, это CSS препроцессоры и к PHP они никакого отношения не имеют (как и к шаблонам).

 

ЗЫ // Какие Вы можете посоветовать шаблонизаторы PHP и стоит ли вообще использовать их в быту ?  

PHP сам по себе не нуждается в шаблонизаторах, так что смысл их использовать есть только, если вы понимаете зачем они вам нужны. Например, если есть какая-то платформа интернет-магазинов и нужно дать возможность пользователям менять дизайн их магазинов (в том числе структуру шаблонов) при этом не давая возможности выполнять php код - вот тут и пригодятся шаблонизаторы.

Share this post


Link to post
Share on other sites

Sass и Less - это никаким боком не шаблонизаторы, это CSS препроцессоры и к PHP они никакого отношения не имеют (как и к шаблонам).

 

PHP сам по себе не нуждается в шаблонизаторах, так что смысл их использовать есть только, если вы понимаете зачем они вам нужны. Например, если есть какая-то платформа интернет-магазинов и нужно дать возможность пользователям менять дизайн их магазинов (в том числе структуру шаблонов) при этом не давая возможности выполнять php код - вот тут и пригодятся шаблонизаторы.

Да Вы правы препроцессоры СSS, но суть вопроса в том нужны ли они в быту или проще сделать дополнительные те же классы с дефолтом для проекта (цвет, размер, и тд. ) и дописывать к элементам по типу как в бутстрпе с блоками, последний  вариант весить меньше будет по идее  

Share this post


Link to post
Share on other sites

SASS / LESS,

Smarty

PHP

 

смешались в кучу, кони, люди (с)

 

Любой язык, framework требует изучения и понимания его внутренней структуры

 

Я согласен, что PHP лучший шаблонизатор.

 

а smarty - платформо независим с точки зрения шаблона, а не ядра.

Share this post


Link to post
Share on other sites
или проще сделать дополнительные те же классы с дефолтом

 

@color: #4D926F;

#header {
  color: @color;
}
h2 {
  color: @color;
}

Чем плох?

Один раз задал и забыл, и меняешь только в одном месте.

 

И код стилей становится платформо независимым

<?php
$color = '#000';
?>

#header {
  color: <?php echo $color; ?>;
}
h2 {
  color: <?php echo $color; ?>;
}

Зависит от наличия PHP

Share this post


Link to post
Share on other sites

я вообще не понимаю зачем эти php шаблонизаторы нужны

1. нужно изучать доп. синтаксис, разный для кажного шаблонизатора

2. скорость работы сайта уменьшается так как появляется еще один слой

3. возможностей по сравнению с php, который сам по себе является шаблонизатором - меньше

и все для чего? Чтобы вместо

<?php echo $foo; ?>

написать

{$foo}

  • +1 1

Share this post


Link to post
Share on other sites

Да дошли до вывода, что в PHP шаблонизаторы это не нужная приблуда

 

А вот по поводу "минимизации" сss возникла вот такая мысль, есть смысл делать или нет дефолтные стили, а потом их дописывать нужным элементам ? 

 

.px15{

font-size:15px !important;

}

 

.defBgColor{

...

}

 

.defBorderRadius{

..

}

Share this post


Link to post
Share on other sites

я вообще не понимаю зачем эти php шаблонизаторы нужны

1. нужно изучать доп. синтаксис, разный для кажного шаблонизатора

2. скорость работы сайта уменьшается так как появляется еще один слой

3. возможностей по сравнению с php, который сам по себе является шаблонизатором - меньше

и все для чего? Чтобы вместо

<?php echo $foo; ?>

написать

{$foo}

 

 

Потому что можно взять и открыть шаблон, и добавить туда только макрос - а не данные.

 

 

а для шаблонизатора php также нужны еще и живые данные

 

smarty далеко пошел, в том числе и с кешированием. отдельных блоков.

Share this post


Link to post
Share on other sites

я вообще не понимаю зачем эти php шаблонизаторы нужны

1. нужно изучать доп. синтаксис, разный для кажного шаблонизатора

2. скорость работы сайта уменьшается так как появляется еще один слой

3. возможностей по сравнению с php, который сам по себе является шаблонизатором - меньше

и все для чего? Чтобы вместо

<?php echo $foo; ?>

написать

{$foo}

Согласен по всем пунктам

Share this post


Link to post
Share on other sites

потому что нужно разделять

слой VIEW от модели и контроллера.

  • +1 1

Share this post


Link to post
Share on other sites

потому что нужно разделять

слой VIEW от модели и контроллера.

ну да верно, это как не как каноны ООП

Share this post


Link to post
Share on other sites

потому что нужно разделять

слой VIEW от модели и контроллера.

Шаблонизатор никак не "слой" view

Это костыль

Share this post


Link to post
Share on other sites

Ну... про костыли я уже слышал

 

 

Шаблонизатор получает на вход данные

 

И каким способом он это выведет - никого не интересует

 

И именно поэтому - это слой VIEW

Share this post


Link to post
Share on other sites

потому что нужно разделять

слой VIEW от модели и контроллера.

 

ну да верно, это как не как каноны ООП

 

 

эмм.. а вы видите связь между ООП и MVC ?

 

https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5

https://ru.wikipedia.org/wiki/Model-View-Controller

Share this post


Link to post
Share on other sites

 Объекты обменивающиеся сообщениями и взаимодействующие друг с другом, чем не ООП в MVC ? 

Share this post


Link to post
Share on other sites

Кроме того код шаблона не активный и это становится безопасным для редактирования шаблона пользователем.

 

выполнить код в шаблоне - невозможно, в частности, smarty вырежет php код

Share this post


Link to post
Share on other sites
кто работал SASS / LESS, на практике он сильно упрощает жизнь  ?

 

 

Работал и работаю.

 

Начинал именно с LESS. Потом возможностей стало мало, перешел на SASS.

 

Но теперь только Stylus.  Ничего лучшего нет.  Превосходит оба предыдущих языка по всем аспектам.

 

Кроме того Stylus на порядок быстрее компилируется чем SASS.  Раз эдак в 10 или 15 быстрее.

Впрочем и сам SCSS можно заставить работать на порядок быстрее если перейти с Java/Ruby на платформу node.js.  Но, к сожалению, SCSS без связки Compass - штука на порядок менее полезная, а Compass на node.js заставить работать нельзя.

 

Вообще, все эти штуки называются препроцессоры. очень и очень они полезны.  Попробовав раз, возвращаться к обычному CSS нет желания.

Edited by sitecreator

Share this post


Link to post
Share on other sites

пробовал sass, но на уровне "поиграться". интересная штука, но мне применять пока негде.

пробовал less - не понравился. не такой удобный, как sass, как по мне.

 

less весьма удобный, я бы даже сказал, что намного удобнее sass.  Всякие миксины вызываются без всяких дополнительных префиксов и ненужных символов.

Но мне не хватило в нем условных операторов.  Впрочем, несколько поизвращавшись и их можно в less сделать, т. к. он позволяет делать вставки кода на Javascript.  Но это извращение.

Share this post


Link to post
Share on other sites

Работал и работаю.

 

Начинал именно с LESS. Потом возможностей стало мало, перешел на SASS.

 

Но теперь только Stylus.  Ничего лучшего нет.  Превосходит оба предыдущих языка по всем аспектам.

 

Кроме того Stylus на порядок быстрее компилируется чем SASS.  Раз эдак в 10 или 15 быстрее.

Впрочем и сам SCSS можно заставить работать на порядок быстрее если перейти с Java/Ruby на платформу node.js.  Но, к сожалению, SCSS без связки Compass - штука на порядок менее полезная, а Compass на node.js заставить работать нельзя.

 

Вообще, все эти штуки называются препроцессоры. очень и очень они полезны.  Попробовав раз, возвращаться к обычному CSS нет желания.

Какие преимущества препроцессоров  Вы можете выделить на практике по сравнении писать это все "по старинке"  ? И почувствовать всю мощь как я понимаю можно только на крупных проектах когда работает команда ?  

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.