В твиге есть много полезного, но порой этого не хватает для решения поставленных задач. Например, генератор уникальных ключей - его в твиге нет, но можно добавить с помощью расширения.
Пользовательские функции делать довольно просто, тем более, что разработчиком предусмотрено сразу два подхода к этому вопросу:
Речь пойдет о https://github.com/justjohn/twig.js, этот шаблонизатор почти полностью подходит под мои задачи, но просто взять и использовать его без express невозможно, т.к. в inline режиме не работают from и import.
Наследование в Twig очень мощная штука, но не хватает тут одного - переопределения макросов.Суть задачи в следующем: есть файл с макросами macro.twig
Возникла задача из файла json получить в твиг без php манипуляций. Задачка как оказалось не настолько и сложная, но подумать немного пришлось.
Интернационализация – это та вещь, о которой мы постоянно слышим в разговорах разработчиков, но очень редко встречаем ее реальное, практическое применение, и это та самая вещь которая получает хороший пинок с выходом нового ECMAScript Internationalization API. В настоящее время все это поддерживается Chrome 24, Chrome для Android, Firefox 29, IE 11 и Opera 15, правда, к сожалению, поддержки от Safari нет. В итоге, мы получаем новое пространство имен Intl с предоставлением широкого выбора функциональных возможностей для включения интернационализации в наши числа, даты и сортировки. Стоит разобраться в основных чертах Intl и стать на путь, где всегда есть поддержка от миллионов людей из множества других стран.
Принцип единственной обязанности, ПЕО (англ. Single responsibility principle, SPR) - один из принципов, которого следует придерживаться при написании кода. Он декларирует, что каждый объект должен иметь одну единственную обязанность и эта обязанность должна быть инкапсулирована в класс.
Принцип открытости-закрытости (англ. Open/closed principle) легко нарушить, но и написать код, который соответствует этому принципу, не так уж и сложно.
Принцип единственной обязанности, открытости-закрытости, подстановки, разделения интерфейса и инвертирования зависимостей. Это – пятерка принципов, которыми следует руководствоваться при написании кода. Принципы подстановки и отделения интерфейса – очень просты сами по себе, а значит их оба можно рассмотреть в одной статье.
Суть принципа разделения интерфейса – в бизнес-логике и клиентском общении. Во всех модульных приложениях должен быть интерфейс, которым может воспользоваться клиент. Это может быть классический объект, реализуемый в шаблонах проектирования вроде Facades. Не важно, применяется то или иное решение. Суть всегда остается той же: объяснить клиентскому коду как правильно использовать модуль. Эти интерфейсы могут находиться между различными модулями в одном приложении или проекте, или между одним проектом в качестве сторонней библиотеки, служащей для подачи еще одного проекта.
Принцип единственной обязанности, открытости-закрытости, подстановки, разделения интерфейсов и инверсии зависимостей – пятерка принципов, на которые следует ориентироваться при написании кода.
Присоединяйся в тусовку
Поделитесь своим опытом, расскажите о новом инструменте, библиотеке или фреймворке. Для этого не обязательно становится постоянным автором.
В этом месте могла бы быть ваша реклама
Разместить рекламу