Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist das Open-Source-Protokoll der Go-Sprache?

Was ist das Open-Source-Protokoll der Go-Sprache?

青灯夜游
青灯夜游Original
2021-06-07 14:20:565414Durchsuche

Die Go-Sprache übernimmt die BSD-Open-Source-Lizenz. Das BSD-Open-Source-Protokoll ist ein Protokoll, das Benutzern viel Freiheit bietet. Sie können es frei verwenden, den Quellcode ändern und den geänderten Code als Open-Source- oder proprietäre Software erneut veröffentlichen. BSD-Code fördert die gemeinsame Nutzung von Code, aber das Urheberrecht des Codeautors muss respektiert werden.

Was ist das Open-Source-Protokoll der Go-Sprache?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, GO 1.11.2, Dell G3-Computer.

Was ist das Open-Source-Protokoll der Go-Sprache?

Go-Sprache stammt von Bell Labs und wurde aus einer Limbo-Sprache entwickelt. Limbo wird zur Entwicklung verteilter Anwendungen auf kleinen Computern verwendet. Es unterstützt modulare Programmierung, starke Typerkennung zur Kompilierungszeit und Laufzeit, In-Process-basierte auf typisierten Kommunikationskanälen, atomare Garbage Collection und einfache abstrakte Datentypen auch auf Minicomputern ohne Hardwareschutz sicher. Go und Limbo wurden von derselben Gruppe von Leuten entwickelt und verfügen über die gleichen hervorragenden Funktionen. Go wurde 2007 bei Google geboren. Google unterstützt die Nutzung von 20 % der Freizeit für die Entwicklung experimenteller Projekte und kam 2009 auf den Markt. Go-Sprache ist Open Source und übernimmt die BSD-Lizenz.

Das BSD-Open-Source-Protokoll ist ein Protokoll, das Benutzern viel Freiheit bietet. Sie können es frei verwenden, den Quellcode ändern und den geänderten Code als Open Source oder proprietäre Software erneut veröffentlichen. Wenn Sie Code veröffentlichen, der das BSD-Protokoll verwendet, oder Ihr eigenes Produkt basierend auf dem BSD-Protokollcode entwickeln, müssen Sie drei Bedingungen erfüllen:

  • Wenn das erneut veröffentlichte Produkt Quellcode enthält, dann ist der Quellcode das BSD-Protokoll im Originalcode enthalten sein.

  • Wenn Sie nur binäre Klassenbibliotheken/Software weiterverbreiten, müssen Sie das BSD-Protokoll in den Originalcode in der Dokumentation und Urheberrechtserklärung der Klassenbibliothek/Software aufnehmen.

  • Sie dürfen den Namen des Autors/der Organisation des Open-Source-Codes und den Namen des Originalprodukts nicht für Marketingzwecke verwenden.

BSD-Code fördert die gemeinsame Nutzung von Code, aber das Urheberrecht des Codeautors muss respektiert werden. BSD ist ein Protokoll, das für die kommerzielle Integration geeignet ist, da es Benutzern die Änderung und Weiterverbreitung von Code ermöglicht und außerdem die Veröffentlichung und den Verkauf kommerzieller Software unter Verwendung oder Entwicklung von BSD-Code ermöglicht. Viele Unternehmen bevorzugen bei der Auswahl von Open-Source-Produkten das BSD-Protokoll, da sie diese Codes von Drittanbietern vollständig kontrollieren und bei Bedarf ändern oder neu entwickeln können.

Erweiterte Informationen: Vergleich von fünf Open-Source-Protokollen (BSD, Apache, GPL, LGPL, MIT)

BSD-Open-Source-Protokoll (Original-BSD-Lizenz, FreeBSD-Lizenz, Original-BSD-Lizenz)

BSD-Open-Source Protokoll ist ein Protokoll, das Benutzern viel Freiheit bietet. Grundsätzlich können Benutzer „tun, was sie wollen“ und es frei verwenden, den Quellcode ändern oder den geänderten Code als Open Source oder proprietäre Software erneut veröffentlichen.

Aber die Prämisse „Machen Sie, was Sie wollen“ Wenn Sie Code veröffentlichen, der das BSD-Protokoll verwendet, oder Ihre eigenen Produkte basierend auf dem BSD-Protokollcode entwickeln, müssen Sie drei Bedingungen erfüllen:

Wenn das erneut veröffentlichte Produkt enthält Quellcode: Das BSD-Protokoll im Originalcode muss im Quellcode enthalten sein. Wenn nur eine binäre Klassenbibliothek/Software weitergegeben wird, muss die BSD-Lizenz im Originalcode in der Dokumentation und der Urheberrechtserklärung der Klassenbibliothek/Software enthalten sein. Verwenden Sie den Namen des Autors/der Organisation des Open-Source-Codes oder den Namen des Originalprodukts nicht für Marketingzwecke.

BSD-Code fördert die gemeinsame Nutzung von Code, aber das Urheberrecht des Codeautors muss respektiert werden. BSD ist ein Protokoll, das für die kommerzielle Integration geeignet ist, da es Benutzern die Änderung und Weiterverbreitung von Code ermöglicht und außerdem die Veröffentlichung und den Verkauf kommerzieller Software unter Verwendung oder Entwicklung von BSD-Code ermöglicht. Viele Unternehmen bevorzugen bei der Auswahl von Open-Source-Produkten das BSD-Protokoll, da sie diese Codes von Drittanbietern vollständig kontrollieren und bei Bedarf ändern oder neu entwickeln können.

Apache-Lizenz

Apache-Lizenz ist ein Protokoll, das von Apache, einer bekannten gemeinnützigen Open-Source-Organisation, übernommen wurde. Diese Vereinbarung ähnelt BSD. Sie fördert auch die gemeinsame Nutzung von Code und respektiert das Urheberrecht des ursprünglichen Autors. Sie ermöglicht auch die Änderung und Weiterverbreitung von Code (als Open Source oder kommerzielle Software). Die zu erfüllenden Bedingungen sind ähnlich wie bei BSD:

Sie müssen dem Benutzer des Codes eine Apache-Lizenz geben. Wenn Sie den Code ändern, muss dies in der geänderten Datei angegeben werden. Erweiterter Code (Änderungen und vom Quellcode abgeleiteter Code) muss die vom ursprünglichen Autor festgelegten Vereinbarungen, Marken, Patenterklärungen und anderen Anweisungen enthalten, die in den Originalcode aufgenommen werden müssen. Wenn das neu veröffentlichte Produkt eine Hinweisdatei enthält, muss die Apache-Lizenz in der Hinweisdatei enthalten sein. Sie können der Mitteilung Ihre eigene Lizenz hinzufügen, es darf jedoch nicht den Anschein erwecken, dass es sich dabei um eine Änderung der Apache-Lizenz handelt.

Apache-Lizenz ist auch eine Lizenz, die für kommerzielle Anwendungen geeignet ist. Benutzer können den Code bei Bedarf auch an ihre Bedürfnisse anpassen und ihn als Open-Source- oder kommerzielles Produkt veröffentlichen/verkaufen.

GPL (GNU General Public License)

Das Linux, mit dem wir sehr vertraut sind, übernimmt die GPL. Die GPL-Vereinbarung unterscheidet sich stark von Lizenzen wie BSD und Apache License, die die Wiederverwendung von Code fördern. Der Ausgangspunkt der GPL ist die Open-Source-/freie Nutzung des Codes und die Open-Source-/freie Nutzung des Referenz-/Modifikations-/Derivatcodes, der modifizierte und abgeleitete Code darf jedoch nicht als kommerzieller Closed-Source-Code veröffentlicht und verkauft werden Software. Aus diesem Grund können wir alle Arten von kostenlosem Linux verwenden, einschließlich Linux von kommerziellen Unternehmen und verschiedener freier Software für Linux, die von Einzelpersonen, Organisationen und kommerziellen Softwareunternehmen entwickelt wurde.

Der Hauptinhalt der GPL-Vereinbarung besteht darin, dass das Softwareprodukt auch die GPL übernehmen muss, solange ein Produkt unter der GPL-Vereinbarung verwendet wird („Verwendung“ bezieht sich auf Klassenbibliotheksreferenzen, geänderten Code oder abgeleiteten Code) in einer Software Vereinbarung und muss Open Source und kostenlos sein. Dies nennt man „Infektiosität“. Es ist kein Problem, GPL-lizenzierte Produkte als separates Produkt zu verwenden und Sie können auch den Vorteil genießen, kostenlos zu sein.

Da die GPL strikt vorschreibt, dass Softwareprodukte, die GPL-Klassenbibliotheken verwenden, das GPL-Protokoll verwenden müssen, sind Open-Source-Code, der das GPL-Protokoll verwendet, kommerzielle Software oder Abteilungen, die Code-Vertraulichkeitsanforderungen haben, nicht für die Integration/Annahme als Klassenbibliotheken geeignet Sekundärentwicklung.

Andere Details, wie die Notwendigkeit, bei der Neuveröffentlichung die GPL-Vereinbarung beizufügen, ähneln BSD/Apache usw.

LGPL (GNU Lesser General Public License)

LGPL ist eine Open-Source-Lizenz der GPL, die hauptsächlich für Klassenbibliotheken entwickelt wurde. Im Gegensatz zur GPL, die verlangt, dass jede Software, die eine GPL-Klassenbibliothek verwendet/ändert/ableitet, eine GPL-Lizenz übernehmen muss. LGPL ermöglicht kommerzieller Software die Nutzung von LGPL-Klassenbibliotheken über Klassenbibliotheksreferenzen (Links), ohne dass der Code kommerzieller Open-Source-Software erforderlich ist. Dadurch kann Open-Source-Code, der die LGPL-Lizenz verwendet, von kommerzieller Software als Klassenbibliothek referenziert und veröffentlicht und verkauft werden.

Aber wenn Sie den Code oder Derivate der LGPL-Vereinbarung ändern, müssen alle geänderten Codes, zusätzlichen Codes, die den geänderten Teil beinhalten, und abgeleitete Codes die LGPL-Vereinbarung übernehmen. Daher ist der Open-Source-Code des LGPL-Protokolls sehr gut geeignet, um von kommerzieller Software als Klassenbibliothek eines Drittanbieters referenziert zu werden. Er eignet sich jedoch nicht für kommerzielle Software, die den LGPL-Protokollcode als Grundlage für die Sekundärentwicklung verwenden möchte Modifikation und Derivate.

GPL/LGPL schützt die geistigen Eigentumsrechte des ursprünglichen Autors und verhindert, dass jemand Open-Source-Code zum Kopieren und Entwickeln ähnlicher Produkte verwendet.

MIT (MIT)

MIT ist eine Lizenzvereinbarung, die so umfassend ist wie BSD Der Autor möchte nur das Urheberrecht behalten, ohne weitere Einschränkungen. Mit anderen Worten, Sie müssen die Erklärung der ursprünglichen Lizenzvereinbarung in Ihre Distribution aufnehmen, unabhängig davon, ob Sie sie als Binärdatei oder als Quellcode veröffentlichen

Das obige ist der detaillierte Inhalt vonWas ist das Open-Source-Protokoll der Go-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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
Vorheriger Artikel:Ist Go plattformübergreifend?Nächster Artikel:Ist Go plattformübergreifend?