12 — Dependency Management

Zuletzt geändert: 1. August 2021
Geschätzte Lesezeit: 1 min

Mit Quell­code Abhän­gig­kei­ten umgehen… 

PHP Composer

Zu Instal­la­ti­on im Root-Ver­zeich­nis des Projekts: 

brew install composer
  1. Tes­ten ob er kor­rekt instal­liert ist, im Ter­mi­nal: composer eingeben.
  2. Im Pro­jekt­ver­zeich­nis eine Datei composer.json anle­gen, und die gewünsch­ten Biblio­the­ken eintragen:
{ "require": { "phpoffice/phpspreadsheet": "^1.14", "nesbot/carbon": "^2.39", "erusev/parsedown": "^1.7", "josantonius/file": "^1.1" } }
Code-Sprache: JSON / JSON mit Kommentaren (json)
  1. Im Ter­mi­nal: composer update ein­ge­ben, und alle Pake­te wer­den her­un­ter geladen. 
  2. Paket ent­fer­nen: composer remove josantonius/file

JavaScript Code über NPM verwalten

Den Java-Script Teil ver­wal­tet man über NPM. Dazu muss man auch node js instal­lie­ren. Wie das geht hab ich in die­sem Arti­kel beschrieben: 

Aufgaben mit Gulp automatisieren

Gulp ist ein Build-Sys­tem. Es dient dazu ver­schie­de­ne Auf­ga­ben im Web­ent­wick­lungs­pro­zess zu auto­ma­ti­sie­ren. Auch Gulp basiert auf node js.

Einfaches Gulp Beispiel

Wenn ich Java-Script Modu­le über npm her­un­ter lade, wer­den sie im Ver­zeich­nis node_modules abge­legt. Dar­in sind dann unter ande­rem *.js und *.css Datei­en die ich in mei­nem Pro­jekt ver­wen­den möch­te. Dazu müss­te ich die­se Datei­en an bestimm­te Stel­len in mei­nem Web­pro­jekt kopie­ren. Das kann man jetzt zu Fuß erle­di­gen, was aber bei vie­len Modu­len mehr als läs­tig wird. Um das zu auto­ma­ti­sie­ren lege ich im root Ver­zeich­nis des Pro­jekts eine Datei gulpfile.js an, und tip­pe fol­gen­des rein: 

// Module definieren const { series, src, dest } = require("gulp"); // Das ist mein Modul... // node_modules // ├── ... // └── morris.js06@0.6.6 // // Wie bekomme ich jetzt die relevanten Teile ins /assets/ Verzeichnis // meines Projekts verteilt? /** * Diese Funktion kopiert morris.js, und morris.css * in die passenden Verzeichnisse in meinem php Projekt. */ function morris() { console.log("deploye Morris irgendwie..."); src('./node_modules/morris.js06/morris.js').pipe(dest('./assets/js/')); src('./node_modules/morris.js06/morris.css').pipe(dest('./assets/css/')); return Promise.resolve('Fertig...'); } exports.morris = morris; exports.default = series(morris); // mehrere Funktionen nacheinander ausführen
Code-Sprache: JavaScript (javascript)

Das Skript kann ich dann im Ter­mi­nal mit gulp morris, oder ein­fach gulp star­ten. Wenn ich nur gulp schrei­be, wird der Default aus­ge­führt. Das kann jetzt soweit auto­ma­ti­siert wer­den, das Ände­run­gen an den Datei­en über­wacht wer­den, und der Kopier­vor­gang jedes mal auto­ma­tisch abläuft. 

Weiterführende Links

War der Artikel hilfreich?
Nich so 0 0 von 0 fanden den Artikel hilfreich.
Ansichten: 38
Vorheriger Artikel: 11 — XDEBUG
Nächster Artikel: 13 — VSCdodium und Java