Zarządzanie zależnościami w języku PHP

Jak z punktu widzenia programisty, sprawnie i wydajnie zarządzać zależnościami w języku PHP?

Podczas pisania większej aplikacji przy pomocy języka PHP wiele razy natrafiamy na dużo powszechnych problemów, z którymi w przeszłości spotkało się wielu użytkowników np. autoryzacja użytkowników. W takim przypadku możemy użyć gotowej biblioteki, która została stworzona właśnie po to, aby rozwiązać nasz problem i  “ nie wymyślać koła na nowo” .

 

Jednak każda taka biblioteka, może być zależna od innej biblioteki. Po pewnym czasie może też ona potrzebować aktualizacji która ją unowocześni. W przypadku w którym nasz projekt zależy od kilkunastu bibliotek, zarządzanie nimi ręcznie może być trudne, szczególnie gdy przy jednym projekcie pracuje więcej niż jedna osoba.

 

Jak możemy sobie poradzić z tym problemem?

 

Z pomocą przychodzi nam Composer. Jest to system zarządzania pakietami dla języka PHP.  Pozwala zadeklarować zależności wymagane przez twój projekt oraz w ułatwia zarządzanie nimi – instalowanie, aktualizowanie, usuwanie.

Zależności te są nazywane paczkami. Paczką może być biblioteka, komponent lub cały framework.

 

Instalacja

Instalacja composera jest bardzo prostą, w systemach unixowych wystarczą następujące komendy:

php -r „copy(‚https://getcomposer.org/installer’, ‚composer-setup.php’);”

php composer-setup.php –install-dir=bin –filename=composer

sudo mv composer.phar /usr/local/bin/composer

 

Gratulacje zainstalowałeś composera!

 

Composer.json

Aby używać composera w swoim projekcie należy utworzyć w nim plik composer.json. Plik ten może być traktowany jako lista odnośników dla composera. Pobierze on tylko te paczki, które są wypisane w tym pliku pod kluczem ‘require’. Composer będzie również sprawdzał zgodność danej paczki z twoim projektem, tzn. zostaniesz poinformowany jeżeli używasz np przestarzałej paczki.

 

 

Wybrane polecenia

composer install

Polecenie install czyta plik composer.json z aktualnego katalogu, oraz pobiera wszystkie paczki, znajdujące się pod kluczem require i zapisuje je w katalogu vendor naszego projektu.

 

composer update

Ta komenda aktualizuje wszystkie zależności do najnowszych wersji i odświeża plik composer.lock.

 

composer require <nazwa_pakietu>

Polecenie używane do dodania paczki do pliku composer.json. Jeżeli plik composer.json nie istnieje zostanie on utworzony.

 

composer init

Polecenie to ułatwia w stworzeniu pliku composer.json.

 

composer remove <nazwa_pakietu>

Komenda ta usuwa wybrany pakiet z pliku composer.json.

 

W celu dokładniejszych informacji zachęcam do zajrzenia na stronę composera:

https://getcomposer.org/

 

Autor: Bruno Jamuła


Opublikowano:

Mentax na Facebook'u