Рубрика «Разработка веб-сайтов» - 300

PHP-Дайджест № 99 – итоги 2016 года и подборка интересных ссылок (11 – 25 декабря 2016) - 1

По традиции, подведем итоги уходящего года и вспомним самые значимые события в мире PHP, которых, к счастью, было немало. И конечно же, подборка со ссылками на свежие материалы за последние две недели.
С наступающим Новым годом! Приятного чтения.
Читать полностью »

Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы и интересные материалы из области фронтенда.

Дайджест свежих материалов из мира фронтенда за последнюю неделю №242 (18 — 25 декабря 2016) - 1

Читать полностью »

В нашем блоге на Хабре мы много пишем о различных вопросах, связанных с ИТ, а также рассказываем о развитии собственного проекта — IaaS-провайдера 1cloud. Сегодня речь пойдет о том, зачем мы разработали новую услугу — бесплатный сервис DNS-хостинга.

Ранее мы уже рассказывали о том, как разрабатывали собственную систему управления DNS с помощью продукта ANS. Базовая схема взаимодействия с системой выглядит так:

Личный опыт: Как мы автоматизировали работу с DNS-записями в хостинг-панели - 1

Читать полностью »

Вступление

В стандарте SQL описывается четыре уровня изоляции транзакций — Read uncommited (Чтение незафиксированных данных), Read committed (Чтение зафиксированных данных), Repeatable read (Повторяемое чтение) и Serializable (Сериализуемость). В данной статье будет рассмотрен жизненный цикл четырёх параллельно выполняющихся транзакций с уровнями изоляции Read committed и Serializable.

Для уровня изоляции Read committed допустимы следующие особые условия чтения данных:

Неповторяемое чтение — транзакция повторно читает те же данные, что и раньше, и обнаруживает, что они были изменены другой транзакцией (которая завершилась после первого чтения).

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

Что же касается Serializable, то данный уровень изоляции самый строгий, и не имеет феноменов чтения данных.

Читать полностью »

Как упростить работу с IntelliJ IDEA: полезные функции для разработчиков - 1

На прошедшем в конце ноября митапе по разработке на Dart Александр Дорошко из JetBrains рассказал о полезных фичах, хинтах и горячих клавишах, которые упрощают работу в Intellij Idea и WebStorm.
Нам показалось, что доклад будет полезен не только дарт-разработчикам, поэтому делимся записью презентации Александра со всем широким кругом.
Читать полностью »

HolyJS Moscow: Время экспансии - 1

JavaScript-мир развивается так бурно, что даже за полгода между петербургской и московской HolyJS многое успело произойти: например, летом о Yarn ещё никто не знал, а сейчас у него больше 20 000 звёзд на GitHub. И для самой конференции тоже многое изменилось: в июне она проходила в самый первый раз, так что тогда ещё не было фидбэка зрителей, очень помогающего при организации. Отличалась ли в таком случае московская версия, и как вообще она прошла? О некоторых докладах уже написали в блоге Mail.Ru Group, а теперь мы публикуем собственный текст о мероприятии.Читать полностью »

image

C 5 по 15 декабря наш отдел образования Mail.Ru Group открыл в режиме без сроков и дедлайнов еще несколько курсов, записанных на платформе Stepik по мотивам занятий в Технопарке. Их можно проходить в удобном для вас режиме без риска потерять баллы. Даже занимаясь не спеша, у вас будет шанс получить сертификат с высокой оценкой.
Читать полностью »

В Yii2 есть возможность реализовать три варианта интернационализации:

1. Файл с массивом, вида: ключ=>перевод (гибко);
2. Файл с расширением .po,.mo бинарный (нужен компилятор, быстро);
3. База данных mysql, две таблицы для ключей и переводом (лучшая реализация при именовании уникальных категорий или привязанных к странице так как yii вытягивает по категории все ключи );

Или свой вариант взяв за основу хранения переводов в базе но со своим управлением (формирования ключей, переводов и их хранения).

Основное

Вызов перевода остается стандартным Yii::t(). Хранить переводы с ключами будем в MySQL. Временное хранилище по текущему языку будет в Redis. Сбор ключей (категорий) остается прежним.

В чем плюсы:

  • быстрее;
  • гибче;

Читать полностью »

Улучшение производительности PHP 7 - 1

PHP — это программное обеспечение, написанное на языке С. Кодовая база PHP содержит около 800 тысяч строк кода и в седьмой версии была существенно переработана.

В этой статье мы рассмотрим, что изменилось в движке Zend седьмой версии по сравнению с пятой, а также разберёмся, как можно эффективно использовать внутренние оптимизации. В качестве исходной точки возьмём PHP 5.6. Зачастую многое зависит от того, как те или иные вещи написаны и представлены движку. При написании критически важного кода необходимо уделять внимание его производительности. Изменив несколько мелочей, вы можете сильно ускорить работу движка, зачастую без ущерба для других аспектов вроде читабельности кода или управления отладкой. Свои рассуждения я докажу с помощью профилировщика Blackfire.
Читать полностью »

Ребята с Railscamp пришли к выводу, что текущая спецификация HTTP неполна: ибо у разработчиков есть много способов «прострелить себе ногу» в коде, но нет никакого формализованного способа, чтобы сообщить природу ошибки конечному пользователю :)

Был предложен RFC со следующими кодами состояния (HTTP status codes), сообщающими о причинах ошибки. Предполагается, что эти коды будут включены в спецификации HTTP в диапазоне 7xx.

Коды занимают весь диапазон от 701 до 799 и поделены на 10 групп. Вот некоторые из них:

  • 707 — Can't quit vi
  • 724 — This line should be unreachable
  • 725 — It works on my machine
  • 726 — It's a feature, not a bug
  • 735 — Fucking IE
  • 767 — Drunk
  • 780 — Project owner not respondingЧитать полностью »

https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js