Conseils sur la bibliothèque open sourceOpen-source library guidance

Cette aide fournit des recommandations à l’attention des développeurs qui créent des bibliothèques .NET de qualité.This guidance provides recommendations for developers to create high-quality .NET libraries. Cette documentation se concentre sur le quoi et le pourquoi de la création d’une bibliothèque .NET, mais pas sur le comment.This documentation focuses on the what and the why when building a .NET library, not the how.

Aspects des bibliothèques .NET open source de qualité :Aspects of high-quality open-source .NET libraries:

  • Inclusives - Les bonnes bibliothèques .NET s’efforcent de prendre en charge plusieurs plateformes, langages de programmation et applications.Inclusive - Good .NET libraries strive to support many platforms, programming languages, and applications.
  • Stables - Les bonnes bibliothèques .NET coexistent dans l’écosystème .NET en s’exécutant dans les applications créées avec de nombreuses bibliothèques.Stable - Good .NET libraries coexist in the .NET ecosystem, running in applications built with many libraries.
  • Conçues pour évoluer - Les bibliothèques .NET doivent s’améliorer et évoluer au fil du temps tout en prenant en charge les utilisateurs existants.Designed to evolve - .NET libraries should improve and evolve over time, while supporting existing users.
  • Débogables - Les bibliothèques .NET doivent utiliser les derniers outils afin de créer une excellente expérience de débogage pour les utilisateurs.Debuggable - .NET libraries should use the latest tools to create a great debugging experience for users.
  • Approuvées - Les bibliothèques .NET ont la confiance des développeurs en publiant sur NuGet à l’aide des bonnes pratiques de sécurité.Trusted - .NET libraries have developers' trust by publishing to NuGet using security best practices.

Types de suggestionsTypes of recommendations

Chaque article présente quatre types de suggestions : À faire, Envisager, Éviter et À ne pas faire.Each article presents four types of recommendations: Do, Consider, Avoid, and Do not. Le type de suggestion indique si celle-ci doit être suivie ou pas.The type of recommendation indicates how strongly it should be followed.

Vous devez presque toujours suivre une suggestion À faire.You should almost always follow a Do recommendation. Par exemple :For example:

✔️ À FAIRE : Distribuer votre bibliothèque à l’aide d’un package NuGet.✔️ DO distribute your library using a NuGet package.

En revanche, les recommandations Envisager doivent généralement être appliquées, mais il existe des exceptions à la règle qui sont fondées, c’est pourquoi vous ne devez pas vous inquiéter si vous ne les suivez pas :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:

✔️ ENVISAGER d’utiliser SemVer 2.0.0 pour versionner votre package NuGet.✔️ CONSIDER using SemVer 2.0.0 to version your NuGet package.

Les suggestions Éviter indiquent quelque chose qui n’est généralement pas une bonne idée, mais enfreindre les règles peut parfois avoir du sens :Avoid recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense:

❌AVOID NuGet références paquet qui exigent une version exacte.❌ AVOID NuGet package references that demand an exact version.

Et enfin, les suggestions À ne pas faire désignent quelque chose que vous ne devez presque jamais faire :And finally, Do not recommendations indicate something you should almost never do:

❌NE publiez PAS de versions de votre bibliothèque, nommées en force et non.❌ DO NOT publish strong-named and non-strong-named versions of your library. Par exemple, Contoso.Api et Contoso.Api.StrongNamed.For example, Contoso.Api and Contoso.Api.StrongNamed.