Что такое PEAR и с чем его едят

👁 53 просмотров

 

Сначала определимся с этой замысловатой и непонятной аббревиатурой PEAR.  Статья из Википедии следующую формулировку:

    «PEAR (акроним от английских слов PHP Extension and Application Repository) — это библиотека классов PHP с открытым исходным кодом. В стандартную поставку PHP входит система управления классами PEAR, которая позволяет легко скачивать и обновлять их.»

Пока совсем непонятно, что за классы, обратимся к официальному сайту, где написано:

«PEAR — это:

  1. структурированная библиотека открытого кода, созданная для пользователей PHP;
  2. система управления пакетами и распространения кода среди разработчиков;
  3. стандарт написания PHP-кода (подробнее о стандарте см. здесь);
  4. базовые классы PHP-кода (подробнее о базовых классах см. здесь;
  5. библиотека дополнительных модулей для PHP (The PHP Extension Code Library, PECL), подробную информацию о PECL можно узнать здесь;
  6. веб-сайт, листы рассылки и зеркала для загрузки — все это предназначено для поддержания и развития сообщества разработчиков PHP/PEAR.»

Иными словами PEAR — это официальный набор пакетов и средств, который поддерживаются и расширяют  возможности РНР.  Тем не менее, PHP содержит все основные пакеты PEAR , которые легко можно расширить , через операции командной строки.  Список основных пакетов можно просмотреть на официальном сайте — здесь.  В данном контексте пакет понимается как набор взаисвязанных классов,  которые снруппированы между собой по некоторому алгоритму или правилу, с помощью которых легко можно отделить одну часть системы от другой.   Близко схожее понятие для пакета — это скорее всего пространство имен, при котором в одном файле или библиотеке можно определить и использовать различные по структурк, но одинаковы по названию классов. Уонечно, в PHP 5 пока что это слабо реализовано  на основе ключевого слова namespace , но в PHP 6 будет полноценная поддержка пространств имен.

Такс, мы чуть отошли от темы, так где же используется PEAR, каковый его преимущества? На это есть ответ. В PEAR реализованы все основные пакеты классов, которые уже протестированы многими опытными разработчиками и вам не потребуется писать заново, допустим, класс для доступа к БД, если в процессе проекта вы решили перейти с MySQL  на Oracle, тем более, вам ненадо писать сам код, достаточно использовать, уже протестированный временем и разработчиками,  код из пакета PEAR.

Еще одна немаловажная сторона PEAR — это то, что в разработке пакетов может участвовать любой желающий и те пакеты и классы, которые уже прошли жесткие нормы PEAR будут включены в официальный дистрибутив PHP.