Dmitry Govor

Russia, Cherepovets

[Перевод] Опциональные зависимости не нужны


В данном посте речь пойдет о пакетах PHP и об алкогольных зависимостях. Вернее, о так называемых опциональных или предложенных зависимостях (optional dependencies, suggest/dev-dependencies), которые определяются в composer.json.

Что такое зависимость?


Для начала разберемся с тем, что такое зависимость и о чем вообще речь. Есть следующий код:

namespace Gaufrette\Adapter;
 
use Gaufrette\Adapter;
use \MongoGridFS;
 
class GridFS implements Adapter
{
    private $gridFS;
 
    public function __construct(MongoGridFS $gridFS)
    {
        $this->gridFS = $gridFS;
    }
 
    public function read($key)
    {
        $file = $this->find($key);
 
        return ($file) ? $file->getBytes() : false;
    }
}

Класс GridFS — часть библиотеки абстрактной файловой системы Gaufrette, которую я в какой-то степени изменил. Для определения всех зависимостей этого кусочка кода мы должны задать себе следующие вопросы:

  • Что нужно, чтобы данный код заработал?

Читать дальше →
Dmitry Govor18 April 2014
79
 0.00