web-dev-qa-db-fra.com

Qu'est-ce que Swagger, Swashbuckle et Swashbuckle UI

Voici ma compréhension:

  • Swagger est une notation/règles pour écrire de la documentation. Mais pourquoi est-il appelé un framework (comme Angular/MVC)?
  • Swashbuckle est un programme (JavaScript?) Qui génère la documentation (basée sur les règles Swagger).
  • L'interface utilisateur Swagger affiche la documentation. Il utilise Swashbuckle pour ce faire.

Ces informations sont-elles correctes? Sinon, quelqu'un peut-il expliquer en termes simples ce que Swagger, Swashbuckle et Swashbuckle UI signifient?

De plus, qu'est-ce que je perds en tant que développeur d'API si je ne l'utilise pas?

26
Blue Clouds

Swagger est une notation/règles pour écrire de la documentation. Mais pourquoi est-il appelé un cadre (comme angulaire/MVC)?

Il est probablement appelé "framework" car son but est d'offrir une manière systématique de noter l'interface de tout service RESTful sous la spécification OpenAPI. C'est un gros problème pour les développeurs car la spécification est supervisée par l'Open API Initiative sous la réputation de la Linux Foundation.

Swashbuckle est un programme (javascript?) Qui génère la documentation (basé sur les règles Swagger)

Swashbuckle est davantage un package (ou une bibliothèque) que vous pouvez utiliser dans vos projets d'API Web .NET. Son but, comme vous l'avez correctement indiqué, est de générer la spécification Swagger pour votre projet. De plus, l'interface utilisateur Swagger est contenue dans Swashbuckle, donc si vous développez une API dans .NET, c'est vraiment un guichet unique sympa d'un package. Il est presque entièrement écrit en C #, pas en JavaScript.

L'interface utilisateur Swagger affiche la documentation. Il utilise Swashbuckle pour ce faire.

Oui, il affiche la spécification Swagger d'une manière agréable et conviviale. Cependant, Swashbuckle n'est pas un composant nécessaire pour cela. Ils sont, à part ce que je viens de dire précédemment, totalement exclusifs.

Aussi qu'est-ce que je perds en tant que développeur d'API, si je ne l'utilise pas.

Cela entre maintenant dans le domaine de l'opinion, mais je vais essayer d'être objectif à ce sujet. J'utilise Swashbuckle pour aider à la création de clients pour mes API d'application. Après avoir dépassé la courbe d'apprentissage de l'implémentation (ce qui n'était pas beaucoup), ce package m'a fait gagner un peu de temps pour écrire moi-même les clients. Écrire un client Web est une chose banale pour les petites applications, mais les applications au niveau de l'entreprise ont tendance à continuer de croître et/ou de changer en complexité, il est donc agréable d'avoir la création/mise à jour de ces clients complètement automatisée.

En bref, si vous décidez de ne pas l'utiliser, vous devez soit recourir à une méthode alternative de génération de client API ou écrire/mettre à jour les clients vous-même. Si vous ne développez que le back-end, cela peut être complètement inutile pour vous, mais cela aiderait certainement la personne responsable de la création des applications clientes qui consommeront vos services d'API.

J'espère que ces réponses ont été utiles. À votre santé!

32
James B. Nall