Heim > Backend-Entwicklung > Golang > Lassen Sie uns über das Tool zur Erkennung zyklischer Abhängigkeiten (go-Cyclic) in Go sprechen

Lassen Sie uns über das Tool zur Erkennung zyklischer Abhängigkeiten (go-Cyclic) in Go sprechen

藏色散人
Freigeben: 2022-12-12 20:21:44
nach vorne
6641 Leute haben es durchsucht

Dieser Artikel führt Sie in das relevante Wissen über Golang ein und spricht über ein Tool zur Erkennung zyklischer Abhängigkeiten (Go-Cyclic) in Open Source Go. Ich hoffe, es wird Ihnen hilfreich sein. LGo-GYCLIC Cyclone verlässt sich auf Tools

Problemfälle Als Go-Entwickler stößt es bei großen Projekten häufig auf das Problem der Zyklusabhängigkeit von Taschen. Wenn in Golang eine zirkuläre Abhängigkeit besteht, wird während der Kompilierung eine Ausnahme ausgelöst.

Wann treten zirkuläre Abhängigkeiten auf?

Wenn es zwei Pakete gibt: Paket a und Paket b. Wenn Paket a von Paket b abhängt und Paket b von Paket a abhängt, entsteht eine zirkuläre Abhängigkeit. Die reale Situation könnte komplizierter sein. Wenn beispielsweise Paket a von Paket b abhängt, Paket b von Paket c abhängt und Paket c von Paket a abhängt, wird ein Zyklus gebildet.


import cycle not allowed
Nach dem Login kopieren
Lassen Sie uns über das Tool zur Erkennung zyklischer Abhängigkeiten (go-Cyclic) in Go sprechen Und wenn das Projekt groß ist, es viele .go-Dateien unter einem Paket gibt und nur Zirkelverweise zwischen Paketen abgefragt werden (wie oben gezeigt), ist es schwierig zu finden, welche .go-Datei und welche .go Datei Es wird direkt ein Zirkelverweis erstellt, was die Fehlerbehebung erschwert. Lassen Sie uns über das Tool zur Erkennung zyklischer Abhängigkeiten (go-Cyclic) in Go sprechenGo-Cyclic einfache Verwendung

Github-Adresse:

github.com/elza2/go-symmetric

(Jeder ist herzlich eingeladen, PR einzureichen)

Go-Cyclic

kann verwendet werden, um zu überprüfen, ob das Projekt zyklische Abhängigkeiten aufweist. und kann die spezifische .go-Datei finden. Hilft, Schleifenprobleme schnell zu lokalisieren.

Schnellstart

go install github.com/elza2/go-cyclic@latest
# path 路径要设置为 go.mod 文件所在的路径.go-cyclic gocyclic --dir .path
Nach dem Login kopieren
# success output.Success. Not circular dependence.# failed output.Failed. 1 circular dependence chains were found.┌---→    app.go┆          ↓
┆       routes.go┆          ↓
└---    handler.go
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonLassen Sie uns über das Tool zur Erkennung zyklischer Abhängigkeiten (go-Cyclic) in Go sprechen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
go
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage