ГРУША - все еще актуальна? - PullRequest
12 голосов
/ 01 февраля 2011

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

Мне действительно нравится идея PEAR, но я напуган отсутствием хорошей / текущей документации.

Например, большинство статей по PEAR датированы, нет доступных рецензируемых книг, а официальное руководство крайне неинтересно.

Я рассматривал фреймворки PHP (CakePHP, CodeIgniter, Symfony, Zend) и фреймворки CMS (Drupal, Joomla, WordPress), но в качестве долгосрочного решения я хочу повторно использовать код, который не будет добавлять ненужных накладные расходы.

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

Поэтому я спрашиваю - является ли PEAR хорошим долгосрочным выбором для повторно используемого PHP-кода?

Ответы [ 4 ]

5 голосов
/ 01 февраля 2011

Уровень документации соответствует пакету PEAR; некоторые из них бедны, а другие нет. Вы можете получить представление о статусе пакета, просмотрев его страницу, проверив даты выпуска, активность билетов и т. Д.

Некоторые очень полезные инструменты, например, phpunit и PHP CodeSniffer , используют PEAR в качестве основного канала распространения, и было бы трудно утверждать, что они больше не актуальны.

Я думаю, что PEAR в целом определенно все еще актуален и будет оставаться таковым, но многие отдельные пакеты, вероятно, не являются.

Использование инфраструктуры никоим образом не мешает вам использовать пакеты PEAR; большинство фреймворков (за исключением, возможно, Zend, который, похоже, является фреймворком типа «все, и кухня, как раковина»), в любом случае не включают в себя все, так что еще будет много вещей, которые вы захотите сделать это еще не покрыто.

Обновление 2013

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

4 голосов
/ 01 февраля 2011

Вы сравниваете вещи, которые не связаны.Pear - это библиотека расширений PHP - простая коллекция классов.CakePHP, Zend и т. Д. Являются фреймворками, которые предоставляют некоторую логическую функциональность, хорошо документированы и хорошо протестированы.Они нацелены на «внедрение» лучших практик веб-разработки (например, MVC) и предоставляют средства для этого.

Я продвинутый новичок

не уверен, что это такое:)

Является ли PEAR хорошим долгосрочным выбором для многоразового PHP-кода?5 лет зависимости от PHP, мне редко приходилось идти по пути PEAR.Прямо сейчас я могу порекомендовать взглянуть на Zend Framework и Doctrine 2. Они поддержаны хорошим активным сообществом.

2 голосов
/ 01 февраля 2011

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

Фреймворки или DAL являются IMO вне области действия PEAR, так что это вряд ли можно сравнить.

Я редко использую PEAR, но если я могу найти там полезный пакет, я предпочитаю его любому другому источнику.Я бы сказал, что PEAR не вполне соответствовал тому, чем должен был быть.Он не достиг статуса камней Ruby или яиц Python, что немного обидно.

0 голосов
/ 01 февраля 2011

Даже если код больше не поддерживается, большая его часть все равно будет работать безупречно.С PHP большинство вещей будет работать нормально независимо от версии PHP;в лучшем случае они могут выдать предупреждение об устаревшей функции.Эти вещи обычно легко изменить.

Что касается PEAR, я лично никогда не использовал их.Я храню коллекцию функций и классов, которые я нашел в Интернете, в папке.Некоторые из них, которые я нашел, другие, которые я написал.

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

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

...