Leitfaden für die Open Source-BibliothekOpen-source library guidance

Dieser Leitfaden bietet Empfehlungen für Entwickler zum Erstellen von qualitativ hochwertigen .NET-Bibliotheken.This guidance provides recommendations for developers to create high-quality .NET libraries. In dieser Dokumentation liegt der Fokus auf dem Was und Warum beim Erstellen einer .NET-Bibliothek und nicht auf dem Wie.This documentation focuses on the what and the why when building a .NET library, not the how.

Aspekte hochqualitativer Open Source-Bibliotheken für .NET:Aspects of high-quality open-source .NET libraries:

  • Inklusiv: Gute .NET-Bibliotheken sind dafür ausgelegt, viele Plattformen, Programmiersprachen und Anwendungen zu unterstützen.Inclusive - Good .NET libraries strive to support many platforms, programming languages, and applications.
  • Stabil: Gute .NET-Bibliotheken existieren im .NET-Ökosystem nebeneinander und werden in Anwendungen ausgeführt, die mit vielen Bibliotheken erstellt wurden.Stable - Good .NET libraries coexist in the .NET ecosystem, running in applications built with many libraries.
  • Für die Weiterentwickelung entworfen: .NET-Bibliotheken sollten sich im Laufe der Zeit verbessern und weiterentwickeln, während Sie vorhandene Benutzer unterstützen.Designed to evolve - .NET libraries should improve and evolve over time, while supporting existing users.
  • Debugfähig: .NET-Bibliotheken sollten die neuesten Tools verwenden, um für Benutzer eine gute Debugleistung bereitzustellen.Debuggable - .NET libraries should use the latest tools to create a great debugging experience for users.
  • Vertrauenswürdig: Entwickler haben Vertrauen zu .NET-Bibliotheken, da diese mithilfe bewährter Sicherheitsmethoden Inhalte auf NuGet veröffentlichen.Trusted - .NET libraries have developers' trust by publishing to NuGet using security best practices.

EmpfehlungstypenTypes of recommendations

Jeder Artikel enthält vier Empfehlungstypen: Do, Erwägen, Vermeiden und Do not.Each article presents four types of recommendations: Do, Consider, Avoid, and Do not. Der Empfehlungstyp kennzeichnet, wie streng die Empfehlung befolgt werden sollte.The type of recommendation indicates how strongly it should be followed.

Eine Do-Empfehlung sollten Sie fast immer befolgen.You should almost always follow a Do recommendation. Beispiel:For example:

✔️ DO Verteilen Sie Ihre Bibliothek mithilfe eines NuGet-Pakets.✔️ DO distribute your library using a NuGet package.

Andererseits gibt es Empfehlungen, die Sie erwägen sollten. Berechtigte Ausnahmen bestätigen jedoch die Regel, und es ist auch nicht weiter schlimm, wenn Sie die folgende Anweisung nicht befolgen:On the other hand, Consider recommendations should generally be followed, but there are legitimate exceptions to the rule and you shouldn't feel bad about not following the guidance:

✔️ ERWÄGEN Sie, SemVer 2.0.0 für die Versionskontrolle Ihres NuGet-Pakets zu verwenden.✔️ CONSIDER using SemVer 2.0.0 to version your NuGet package.

Empfehlungen hinsichtlich Vermeiden geben Dinge an, die allgemein als keine gute Idee angesehen werden, jedoch kann das Brechen dieser Regel manchmal auch sinnvoll sein:Avoid recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense:

❌ VERMEIDEN Sie NuGet-Paketverweise, die eine exakte Version erfordern.❌ AVOID NuGet package references that demand an exact version.

Schließlich kennzeichnen Do not-Empfehlungen Vorgänge, die Sie niemals ausführen sollten:And finally, Do not recommendations indicate something you should almost never do:

❌ Veröffentlichen Sie NICHT die Versionen Ihrer Bibliothek mit oder ohne starkem Namen.❌ DO NOT publish strong-named and non-strong-named versions of your library. Beispiel: Contoso.Api und Contoso.Api.StrongNamed.For example, Contoso.Api and Contoso.Api.StrongNamed.