Шаблоны проектирования в PHP

  • PHP
  • 1 год назад

Что же такое шаблоны проектирования? Шаблоны проектирования это не шаблоны анализа, это не описания стандартных структур (например, связанных списков). Это не определенные разработки приложений или фреймворков. По сути, шаблоны проектирования это «описания взаимодействующих объектов и классов, предназначенных для решения общей проблемы проектирования в определенном контексте». Иным словами, шаблоны проектирования предоставляют обобщенное, многократно применяемое решение проблем программирования, с которыми мы сталкиваемся каждый день. Шаблоны проектирования это не готовые классы или библиотеки, которые можно просто применить к вашей системе. Это не конкретное решение, которое можно преобразовать в исходный код. Шаблоны проектирования – это намного больше. Это шаблоны, которые можно использовать для решения проблемы в различных конкретных ситуациях.

Читать далее...

Руководство по модульному тестированию. Часть I. Введение в PHPUnit

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

Читать далее...

Как использовать JMeter для проведения нагрузочного тестирования и производительности вашего веб-приложения

Поскольку приложение JMeter представляет собой Java-приложение, его можно использовать для проведения нагрузочного тестирования любого веб-приложения, включая приложения, написанные на PHP, .NET и т.д.

Изначально это приложение предназначалось для тестирования работы Apache Tomcat, который, по сути, представляет собой веб-сервер.

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

Читать далее...

Разработка плагина для jQuery: Пять простых шагов

Разработчикам известна ситуация, когда во время создания интерактивного веб-приложения приходится писать похожий (или один и тот же) код снова и снова. В таких случаях возникает необходимость в возможности многократного использования кода. Более того, разработчик может столкнуться с проблемами масштабирования и задания пространства имен.

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

Читать далее...

Как добавлять NoSQL-запросы в MySQL, интегрированный с memcached, на Ubuntu 14

О том, как использовать memcached и его функцию в качестве автономного сервера вместе с MySQL, уже написано во множестве прекрасных статей – например, Установка и использование Memcache на Ubuntu 14.04. Но в качестве автономного сервера memcached выполняет промежуточную функцию, предшествуя уровню доступа MySQL-клиента, и работает только с той информацией, которая находится в памяти, без возможности ее постоянного хранения. Это позволяет выполнять такие задания, как кэширование результатов повторных MySQL-запросов, что экономит ресурсы и оптимизирует работу нагруженных сайтов.

Читать далее...

15 отличных примеров для создания cron задач в Linux

MIN HOUR DOM MON DOW CMD

Таблица: Поля и допустимые диапазоны Crontab (синтаксис Linux Crontab)

Основа использования cron – выполнение задач в определённое время, как показано ниже. Это будет выполнять скрипт полного резервного копирования (full-backup) 10 июня в 8.30.

Пожалуйста, обратите внимание, что поле времени использует 24-часовой формат, Так что 8 АМ – 8, 8 РМ – 20 часов.

Читать далее...

5 javascript ошибок, которые появляются без предупреждений

Недавно я познакомился с TrackJS, служба мониторинга JavaScript вашего сайта и она меня очень впечатлила. Вы сразу видите всю информацию о возникшей ошибке, включая проблемный файл скрипта, URL, браузер и т.д. Я предлагаю ознакомиться со статьей от автора TrackJS.

Итак, мы работаем с веб-приложениями в неблагоприятной среде. С каждым просмотром страницы наш JavaScript передается по непредсказуемой сети в неконтролируемый нами браузер пользователя. Звучит устрашающе, но давайте разобьём все ошибки на 5 групп, которые оказывают влияние на современные JavaScript приложения, которые разработчик зачастую не замечает вовсе.

Читать далее...

Тестирование API : Установка и использование Codeception

Существует несколько методов установки codeception. Мы воспользуемся composer для этой цели, вы, конечно, можете выбрать любой удобный для вам метод.

Для начала перейдем в каталог куда вы хотите установить codeception и где будут храниться ваши тесты. В моем случае - app1.

composer require "codeception/codeception:*"

или

php composer.phar require "codeception/codeception:*"

Через некоторое время codeception будет скачан. После установки вы сможете использовать его в командной строке. Выполним следующую команду, чтобы проверить, что все установилось корректно:

Читать далее...