Библиотека — это программный код, оформленный в виде отдельного компонента, который можно использовать для решения изолированной задачи.

Назначение библиотек

Профессиональный программист не будет писать весь код самостоятельно. Уровень разработчика определяется не только его знанием языка, но и умением искать и выбирать подходящие инструменты для решения конкретной задачи. Если есть возможность использовать качественное готовое решение, то это будет лучшим выбором.

Готовые решения помогают писать меньше кода и сосредоточиться на предметной области проекта. Большинство библиотек свободно распространяются в интернете и доступны для бесплатного использования.

Обычно библиотека — это набор PHP-сценариев, запакованных в архив. При установке файлы распаковываются из архива в определённую папку внутри вашего проекта. Как правило, один проект использует минимум несколько библиотек.

Когда использовать библиотеку

Когда следует использовать и как выбрать подходящую для ваших целей библиотеку?

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

Следующее, на что стоит обратить внимание при выборе библиотеки — это наличие хорошей документации.
Документация описывает возможности библиотеки и способы её использования. Если документация неполная, устаревшая или вообще отсутствует, то использовать эту библиотеку будет очень сложно. Придётся самостоятельно разбираться в её исходном коде и смотреть, как всё работает. В общем, качественная документация — это очень важно.

Второе важное качество библиотеки — это то, много ли программистов уже используют это решение.
Как узнать этот показатель? Можно ориентироваться на количество звёзд на GitHub, количество результатов при поиске или данные сервиса Google Trends.
Почему это важно? Чем больше у библиотеки пользователей, тем проще будет найти ответ в затруднительной ситуации или разобраться в особенностях использования.

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

Пример подключения и использования библиотеки

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

Зависимости библиотеки

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

Вот пример: мы скачали библиотеку «А», а она, в свою очередь, использует библиотеку «Б». При этом код библиотеки «Б» мы не загружали и не устанавливали. Тогда библиотекой «А» воспользоваться не получится, потому что она не будет работать, пока дополнительно не будет установлена библиотеку «Б». Такие отношения между библиотеками называются зависимостями.

Всё ещё больше усложняется, когда зависимость включает не только название библиотеки, но и конкретную версию.