λίγα λόγια για τον composer

php logo

Όπως πιθανότατα έχετε καταλάβει, δεν θα μιλήσουμε για τον Beethoven, αλλά για τον συμπαθητικό dependency manager της PHP. Επιμένουμε στον όρο dependency, διευκρινίζοντας ότι δεν πρόκειται για package managemenet, αφορά σε εξαρτήσεις per project. Αυτό σε απλά ελληνικά σημαίνει ότι, ενώ ένας package manager θα αναλάμβανε τις προσθαφαιρέσεις βιβλιοθηκών globally στο σύστημα, o composer αναλαμβάνει την εγκατάσταση στο φάκελο vendor του project σας.

Το πλεονέκτημα της φιλοσοφίας του composer είναι ότι αντιγράφοντας το φάκελο του project στον production server, έχετε πάρει μαζί σας όλα όσα χρειάζεστε για το τελικό deployment. Ακόμα μεγαλύτερο πλεονέκτημα αποτελεί το γεγονός ότι δεν χρειάζεται να κατεβάσετε, να ξεζιπάρετε, να ενσωματώσετε στο project σας την τάδε βιβλιοθήκη, εφόσον φυσικά είναι συμβατή με τον composer, απλά δηλώστε το όνομά της, την έκδοσή της και ο composer θα αναλάβει τα υπόλοιπα για εσάς. Αντιγράφουμε το χαρακτηριστικό παράδειγμα από το επίσημο site του composer:


{
"require": {
"monolog/monolog": "1.2.*"
}
}