Как стать автором
Обновить

Комментарии 3

Мне интересно, какие пакеты вообще имеются в виду? Есть куча библиотек, которые решают небольшие задачи и имеют огромную поддержку сообщества. У них много вопросов уже решено, как среди крупных и сложных вещей типа PHPOffice, так и среди мелочей, которые можно написать самому, вроде логгеров. Но зачем это делать, если есть Monolog, или какой-нибудь Guzzle для запросов?

Понятно, что не нужно тянуть пакет с двумя звездами на GitHub и последним обновлением в 2009 году. Но в остальном гораздо приятнее работать в проекте, где используются общепринятые библиотеки с хорошей документацией, написанными тестами на все случаи жизни и множеством ответов на Stack Overflow. Это лучше, чем если разработчик скопипастил себе в проект класс, и приходится разбираться, что хотел сказать автор, на что этот класс вообще способен и нужно ли копипастить второй класс для следующей функции.

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

вы абсолютно правы, об этом и речь. Пакет, который вписывается в интерфейс это вообще мечта. Речь о мелких пакетах, состоящих из нескольких файлов, либо функционал который вам действительно нужен содержится в отдельной его части. Конечно guzzle,monolog,sentry, официальный sdk - это то, что нужно добавлять в require. Но например, у нас появился недавно "giggsey/libphonenumber-for-php". Уверен, что без него можно было обойтись.

Рано или поздно, ... пакет ... стал несовместим с новыми версиями php... На самом деле нужно просто сделать ctrl+c ctrl+v, забыв навсегда о необходимости его обновлять.

Формулировка хромает на обе ноги и в результате представляет собой взаимоисключающие параграфы. Понятно, что автор хотел сказать другое, но по факту получилось, что пакет, скопированный в код проекта, под новые версии РНР будет обновлять себя сам.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации