Рубрика «php» - 69

PHP-Дайджест № 116 – свежие новости, материалы и инструменты (27 августа – 10 сентября 2017) - 1

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.2.0 RC 1, Laravel 5.5 LTS, чистый код на PHP, предложения из PHP Internals, видео с конференций и митапов, и многое другое.
Приятного чтения!

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

Мы рады представить сообществу сервис PushAuth, который позволяет Вашим клиентам авторизироваться с помощью PUSH-сообщений на мобильном устройстве!

PUSH-авторизация в сервисах с помощью мобильного приложения - 1

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

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

Рассказ о том как я участвовал в highloadcup (чемпионат для backend-разработчиков) от Mail.Ru. Написал на php сервер обслуживающий 10000 RPS, но я всё равно не получил победную футболку.

По следам highloadcup: php vs node.js vs go, swoole vs workerman, splfixedarray vs array и многое другое - 1
Читать полностью »

Часть 1. Сервер
Часть 2. Клиент
Часть 3. Мутации
Часть 4. Валидация. Выводы

Валидация и UnionType

Одной из интересных задач с которой пришлось столкнуться была серверная валидация при изменении данных. Как быть, если возникли ошибки при изменении объекта? В статьях можно найти много решений этой проблемы, но мы решили использовать композитный тип Union. Простыми словами, Union — это когда результат запроса может быть не одного лишь типа, а различных, в зависимости от результата выполнения resolve().

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

Selenium для всех: как мы учим QA-инженеров работать с автотестами - 1

Привет!

Меня зовут Виталий Котов, я работаю в Badoo в отделе QA, занимаюсь автоматизацией тестирования, а иногда и автоматизацией автоматизации тестирования.

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

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

Компания Mail.Ru предложила интересный чемпионат для backend-разработчиков: HighLoad Cup. Который позволяет не только получить хорошие призы, но и поднять свой скилл backend-разработчика. Об опыте разработки и настройки окружения будет рассказано под катом.
Читать полностью »

Часть 1. Сервер
Часть 2. Клиент

Порой при разработке API случается так, что необходимо не только лишь получать данные, но и вносить определенные изменения. Именно для этой цели существует то, что в GraphQL называется странным словом "мутация".

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

Часть 1. Сервер

Для реализации UI рассмотрим пример написания веб-клиента для нашего GraphQL-сервера. И коли уж мы решили не следовать старым добрым традициям, то и в UI этого делать, конечно же, не будем и напишем его на кастомных веб-компонентах с использованием замечательной библиотеки Polymer.

Почему для подключения к GraphQL-серверу была выбрана библиотека Apollo сказать сложно, так как аналогов для работы с GraphQL я не встречал. Изначально библиотека, как и вся ее документация заточена под React, а вся информация об интеграции с Polymer ограничивается лишь ссылкой на компонент в разделе Integrations. Таким образом, если вы работаете с React, вам и карты в руки. Все примеры, твики и хуки именно для него.

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

Погружение в ценообразование Magento 2, убираем копейки после скидок - 1
Ценообразование — пожалуй, достоинство в Magento и самая интересная часть системы.
А для владельца магазина — самая важная часть, так как связано с деньгами.
Ранее коллеги рисовали диаграммы, которые еле помещались на Китайской Стене, пытаясь уместить все-все-все этапы расчета. В этой статье попробую изложить только основные этапы расчета, и пример округления скидок в пользу магазина. К счастью, по сравнению с Magento 1, новшества коснулись самых глубин, подход остался неизменным.

Верхушка айсберга

image

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

Чистый код на PHP - 1

Это принципы разработки ПО, взятые из книги Clean Code Роберта Мартина и адаптированные для PHP. Это руководство не по стилям программирования, а по созданию читабельного, многократно используемого и пригодного для рефакторинга кода на PHP.

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

Статья вдохновлена clean-code-javascript.

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


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