26 Ноября в 11:00 начнётся мини-конференция в Иваново. Рассказывать будем я (общее про архитектуру приложений) и Андрей Коненков (абстрагирование внешнего API).
Узнать о мероприятии подробнее и записаться можно на сайте http://itgeekclub.ru/.
15 ноября 2016
26 Ноября в 11:00 начнётся мини-конференция в Иваново. Рассказывать будем я (общее про архитектуру приложений) и Андрей Коненков (абстрагирование внешнего API).
Узнать о мероприятии подробнее и записаться можно на сайте http://itgeekclub.ru/.
3 ноября 2016
Вдогонку к варианту с jQuery тот же простой шаблонизатор, но без библиотек.
Для начала задаём сам шаблон прямо в HTML страницы:
<script type="html/tpl" id="my-template"> <div class="item"> <h1>{title}</h1> <p class="description">{description}</p> </div> </script>
Далее реализовываем сам метод получения строки с заменёнными плейсхолдерами:
function renderTemplate(name, data) { var template = document.getElementById(name).innerHTML; for (var property in data) { if (data.hasOwnProperty(property)) { var search = new RegExp('{' + property + '}', 'g'); template = template.replace(search, data[property]); } } return template; }
Использовать можно так:
var html = renderTemplate('my-template', { title: "My cool thing", description: "It is really cool, isn't it?" });
Стоит отметить, что экранирование спецсимволов не делается, так что будьте осторожны.
2 ноября 2016
Шаблоны — это удобно. Особенно когда альтернатива — формировать HTML конкатенацией. Если в проекте есть jQuery, а отдельный шаблонизатор использовать не хочется, реализовать простые шаблоны очень просто.
Для начала задаём сам шаблон прямо в HTML страницы:
<script type="html/tpl" id="my-template"> <div class="item"> <h1>{title}</h1> <p class="description">{description}</p> </div> </script>
Далее реализовываем сам метод получения строки с заменёнными плейсхолдерами:
function renderTemplate(name, data) { var template = document.getElementById(name).innerHTML; for (var property in data) { if (data.hasOwnProperty(property)) { var search = new RegExp('{' + property + '}', 'g'); template = template.replace(search, data[property]); } } return template; }
Использовать можно так:
var html = renderTemplate('my-template', { title: "My cool thing", description: "It is really cool, isn't it?" });
Стоит отметить, что экранирование спецсимволов не делается, так что будьте осторожны.
26 октября 2016
В команде Yii пополнение. К нам присоединился Boudewijn Vahrmeijer из Нидерландов. Если вы следите за разработкой Yii на GitHub, то наверняка встречали его под ником @dynasource.
23 октября 2016
Доклад от члена команды Yii, Дмитрия Науменко.
20 октября 2016
Релизнули новую версию фреймворка. В этот раз есть довольно вкусные изменения, касающиеся обработки URL, получения имени домена, миграций и кастинга атрибутов в ActiveRecord. Также в релиз вошли обновлённые шаблоны приложений. Всё, что касается тестирования, было переработано Михаилом Боднарчуком (@DavertMik), автором Codeception.
17 октября 2016
PHP-FIG запустили опрос по PSR-12 — новому стилю кода, который призван заменить PSR-2, вобрав в себя новые правила для PHP 7. Заполнить опрос могут все желающие.
16 октября 2016
За несколько лет использования у меня собралась хоть и небольшая, но коллекция совершенно незаменимых Chrome-расширений. Делюсь.
Ссылки будут, в основном, на Opera addons, но всё то же можно найти и в chrome web store.
12 октября 2016
24 сентября в Киеве, как и планировалось, прошла мини-конференция, докладчиками которой выступили члены команды Yii и Codeception. Всего было четыре доклада и довольно продолжительная сессия вопросов и ответов. Вышло отлично. И организаторы и докладчики большие молодцы. Аудитория тоже очень порадовала.
Доклады получились интересными и писались на видео. Всем рекомендую.
10 октября 2016
Выходные прошли сверхпродуктивно. Взяли второе место на хакатоне Мануфактуры, Сбербанка и ФРИИ. Шёл я туда не ради победы. В подобных хакатонах никогда не участвовал и было интересно.