DevGang
Авторизоваться

Пользовательские функции в Twig 

В твиге есть много полезного, но порой этого не хватает для решения поставленных задач. Например, генератор уникальных ключей - его в твиге нет, но можно добавить с помощью расширения. 
Пользовательские функции делать довольно просто, тем более, что разработчиком предусмотрено сразу два подхода к этому вопросу:

TwigJS фикс инлайновых макросов 

Речь пойдет о https://github.com/justjohn/twig.js, этот шаблонизатор почти полностью подходит под мои задачи, но просто взять и использовать его без express невозможно, т.к. в inline режиме не работают from и import.

Переопределение macro 

Наследование в Twig очень мощная штука, но не хватает тут одного - переопределения макросов.Суть задачи в следующем: есть файл с макросами macro.twig

JSON из файла в twig 

Возникла задача из файла json получить в твиг без php манипуляций. Задачка как оказалось не настолько и сложная, но подумать немного пришлось. 

Работа с Intl

Интернационализация – это та вещь, о которой мы постоянно слышим в разговорах разработчиков, но очень редко встречаем ее реальное, практическое применение, и это та самая вещь которая получает хороший пинок с выходом нового ECMAScript Internationalization API. В настоящее время все это поддерживается Chrome 24, Chrome для Android, Firefox 29, IE 11 и Opera 15, правда, к сожалению, поддержки от Safari нет. В итоге, мы получаем новое пространство имен Intl с предоставлением широкого выбора функциональных возможностей для включения интернационализации в наши числа, даты и сортировки. Стоит разобраться в основных чертах Intl и стать на путь, где всегда есть поддержка от миллионов людей из множества других стран.

SOLID «S»: Принцип единственной обязанности 

Принцип единственной обязанности, ПЕО (англ. Single responsibility principle, SPR) - один из принципов, которого следует придерживаться при написании кода. Он декларирует, что каждый объект должен иметь одну единственную обязанность и эта обязанность должна быть инкапсулирована в класс.

SOLID «O»: Принцип открытости/закрытости 

Принцип открытости-закрытости (англ. Open/closed principle) легко нарушить, но и написать код, который соответствует этому принципу, не так уж и сложно.

SOLID «L»: Принцип подстановки Барбары Лисков

Принцип единственной обязанности, открытости-закрытости, подстановки, разделения интерфейса и инвертирования зависимостей. Это – пятерка принципов, которыми следует руководствоваться при написании кода. Принципы подстановки и отделения интерфейса – очень просты сами по себе, а значит их оба можно рассмотреть в одной статье.

SOLID «I»: Принцип разделения интерфейса

Суть принципа разделения интерфейса – в бизнес-логике и клиентском общении. Во всех модульных приложениях должен быть интерфейс, которым может воспользоваться клиент. Это может быть классический объект, реализуемый в шаблонах проектирования вроде Facades. Не важно, применяется то или иное решение. Суть всегда остается той же: объяснить клиентскому коду как правильно использовать модуль. Эти интерфейсы могут находиться между различными модулями в одном приложении или проекте, или между одним проектом в качестве сторонней библиотеки, служащей для подачи еще одного проекта.

SOLID «D»: Принцип инверсии зависимостей

Принцип единственной обязанностиоткрытости-закрытостиподстановкиразделения интерфейсов и инверсии зависимостей – пятерка принципов, на которые следует ориентироваться при написании кода.

Присоединяйся в тусовку

Поделитесь своим опытом, расскажите о новом инструменте, библиотеке или фреймворке. Для этого не обязательно становится постоянным автором.

Попробовать

В этом месте могла бы быть ваша реклама

Разместить рекламу