Заметки в категории «Программирование»
Публикуются записи, напрямую связанные с программированием на PHP, JavaScript, алгоритмы, проблемы и их решения, создание, тестирование, отладка и обслуживание исходного кода.
Публикуются записи, напрямую связанные с программированием на PHP, JavaScript, алгоритмы, проблемы и их решения, создание, тестирование, отладка и обслуживание исходного кода.
Создание эффективных коммитов — отличительная черта опытных разработчиков. Принятие спецификации «Conventional Commits» (Соглашение о коммитах) служит маяком для структурирования коммитов.
После устройства на новое место работы мне был выдан корпоративный email и доступы в закрытый репозиторий компании, который, само собой, не совпадает с вашим личным почтовым ящиком.
Tempest – PHP MVC микро-фреймворк, который не мешает вам работать.
В этом руководстве мы рассмотрим, как можно запустить GitHub Action с помощью HTTP-запроса, используя команду curl.
Twitter Bootstrap — самый популярный CSS-фреймворк. У него более 165к звезд и 79к форков на GitHub.
В одной из своих предыдущих статей я показал, как развернуть проект на VPS-сервере с помощью CircleCI. В этой статье я покажу, как проделать аналогичный процесс, но только используя Github Actions.
Если вы, как и я, любите порядок во всём, то могу порекомендовать пакет composer-normalize, который помогает поддерживать ключи composer.json в соответствии со схемой schema.json.
Тестирование предупреждений (warnings), передаваемых через trigger_error
, вызывает предупреждение об устаревании в PHPUnit 9+.
В этом руководстве мы рассмотрим, как переопределять классы с помощью Composer.
Как это работат, изменение привелегий, кастомизация.
Изначально я хотел написать общий пост о PHP генераторах, функции, появившейся в PHP 5.5.
Если вы используете PHPUnit для запуска множества тестов, каждый из которых определяет константы, то вы можете столкнуться с ошибкой «Constant CONSTANT_NAME Already Defined» при попытке запустить их вместе.
Composer второй версии даёт прирост по производительности почти на 50% по сравнению с первой версией, поэтому обновить его рекомендую каждому разработчику.
В одном из чатов поддержки WordPress прозвучал простой, на первый взгляд, вопрос: «В чем отличие команды composer install
от команды composer update
«, на который я постараюсь ответить как можно подробнее.
Статические анализаторы кода (PHPStan, Psalm, Phan) просто читают код и пытаются найти в нём ошибки.
На GitHub есть одна очень полезная штука, про которую многие не знают — это возможность слинковать issue с pull request или отметить issue или pull request как дубликат или закрыть issue автоматически при помощи ключевых слов.
GRASP (general responsibility assignment software patterns) — общие шаблоны распределения ответственностей.
Качественный дизайн обладает слабой связанностью (low coupling) и сильной связностью (high cohesion).
В этом руководстве я покажу, как использовать API, который нам предлагает GitHub через свой токен, чтобы применить Action для непрерывного развертывания приватных репозиториев.
Во время работы над сайтом Delicious Brains у нас возникла необходимость хранения некоторых метаданных о произвольном типе записей (CPT).
Глубокое понимание патерна «dependency injection» — очень важная вещь для крутого разработчика.
Состояние гонки или опасность гонки — это состояние электроники, программного обеспечения или другой системы, в котором основное поведение системы зависит от последовательности или времени других неконтролируемых событий.
Поставить ссылку на Skype клиент на первый взгдяд весьма простая задача. Но не все так просто, как может показаться на первый взгляд.
Библиотека husky может предотвращать плохие git commit
, git push
и еще что-то).
Часто при написании тестов необходимо протестировать внешнюю функцию или функцию, которая встроена в php.
Объект абстрактного класса мы не можем создать напрямую. Поэтому работать с ним будем через stub
. Что такое stub
можно прочитать в статье про Модульное тестирование.
Если вам понадобился данный трюк, то, скорее всего, вы имеете проблему в архитектуре вашего класса/приложения. Его использование — это крайняя мера.
Иногда в тестах нам нужно прочитать/заменить protected
или private
свойство объекта.