Dependency management

Jorsens

Mitglied
Hi Leute,
ich würde gerne wissen was ein Dependency management ist, wie es funktioniert und was es für vor und Nachteile es gibt.

danke jetzt schonmal für die hilfe
Jorsens
 

Robat

Top Contributor
Alle 3 Fragen werden wunderbar bei Google erklärt - einfach mal nach Dependency Management googeln.
Was genau fehlt dir noch zum Verständnis?

Hier mal einführend zu Maven und Gradle.
 

Jorsens

Mitglied
Ich hab mir dort schon viele Artikel durchgelesen aber ich habe nich nicht so richtig verstanden was genau der Vorteil davon ist. Da ich das soweit verstanden habe das man damit seine Daten sortieren, und verwalten lassen kann. Allerdings so habe ich das verstanden gibt es nach einer Gewissen Größe an Beziehungen das Problem das die Programme wenn man sie in sie in seinen code mit einfügt einen Logische Fehler erzeugen.
 

Robat

Top Contributor
Um mal einige Vorteile zu nennen:
- Wenn du in einer Gruppe programmierst müssen sich die anderen nicht darum kümmern an die eingebundenen Libs zu kommen.
- Du musst dich nicht darum kümmern die Dependencies der eingebundenen Libs zu vervollständigen
- Du musst keine 3 Stunden lang das Internet nach .jar Dateien durchforsten, diese runterladen, in ein Ordner schieben und sie deinem Projekt hinzufügen
- Wenn es um Lizenzen geht kann dir eine Auflistung gegeben werden (der Punkt ist für einen einzelnen Hobby-Programmierer sicherlich eher uninteressant)
- ...

Prinzipiell muss jeder für sich selbst entscheiden, ob er die Gründe für Vorteile hält. Sicherlich kann man das alles auch per Hand machen aber wenn man sich einmal ein Gerüst zusammengebaut hat brauch man dieses nur noch in jedem Projekt übernehmen und der ganze Dependency-Quatsch läuft wie geschmiert.

nach einer Gewissen Größe an Beziehungen das Problem das die Programme wenn man sie in sie in seinen code mit einfügt einen Logische Fehler erzeugen.
Persönlich bin ich noch nicht an diese Grenzen gestoßen.
 

mrBrown

Super-Moderator
Mitarbeiter
Allerdings so habe ich das verstanden gibt es nach einer Gewissen Größe an Beziehungen das Problem das die Programme wenn man sie in sie in seinen code mit einfügt einen Logische Fehler erzeugen.
Was meinst du damit?

Wenn du damit kollidierende transitive Abhängigkeiten meinst (Dein Projekt braucht A und B, A baucht C in Version 1 und B braucht C in Version 2):
Ja, kann passieren. Ohne Dependency-Management passiert es dann aber auch.
 

Jorsens

Mitglied
Entschuldige bitte das ich darauf so späht antworte. Leider habe ich das mit den A B C Daten nicht verstanden kannst du das genauer erläutern?

Ich meinte das eigentlich genau so wie ich es oben geschrieben habe. Diese information habe ich auf irgendwelchen Seiten nach gelesen deswegen kann es gut sein das die information falsch ist.
 

mrBrown

Super-Moderator
Mitarbeiter
Entschuldige bitte das ich darauf so späht antworte. Leider habe ich das mit den A B C Daten nicht verstanden kannst du das genauer erläutern?
Es gibt die Dependencies A, B und C.
Dein Programm braucht Dabei A und B.
A braucht Dependency C in der Version 1, deinem Programm muss, damit A benutzt werden kann, auch C1 beiliegen.
B braucht aber Dependency C in der Version 2, damit dein Programm B nutzen kann, muss also C2 beiliegen.

Version 1 und Version 2 von C gleichzeitig klappt aber nicht, also gibts Probleme.


Ich meinte das eigentlich genau so wie ich es oben geschrieben habe. Diese information habe ich auf irgendwelchen Seiten nach gelesen deswegen kann es gut sein das die information falsch ist.
Hm, zumindest ist die Aussage deutlich zu knapp, um sagen zu können, ob das gänzlich falsch oder nur missverständlich oder richtig ist...
 

Ähnliche Java Themen


Oben