https://d226lax1qjow5r.cloudfront.net/blog/blogposts/announcing-net-sdk-version-5-0-0/Blog_SDK-Updates_1200x600.png

Anuncio de la versión 5.0.0 del SDK .NET

Publicado el May 4, 2021

Tiempo de lectura: 3 minutos

Me complace anunciar el lanzamiento de nuestro nuevo .NET 5.0.0 SDK. Este es mi primer lanzamiento importante desde que me uní al equipo de Plataforma y Experiencia del Desarrollador en Vonage el año pasado, y me entusiasma compartir las novedades.

Novedades

Hemos añadido unas cuantas funciones nuevas al SDK .NET, he aquí una enumeración de ellas.

SDK reconstruido en torno a las convenciones de .NET

Las versiones anteriores del SDK no parecían muy ".NET", esta versión lo soluciona.

  • Hemos abstraído todas las llamadas a la API detrás de interfaces que permiten una fácil sustitución a través de la inyección de dependencia para sus pruebas. Por ejemplo, la clase SMS del SDK heredado se sustituye por la interfaz ISmsClient que puedes utilizar o sustituir por ti mismo.

  • Todas las nuevas estructuras y API se ajustan ahora a las convenciones de nomenclatura de .NET. Además, hemos introducido muchos enums nuevos para eliminar algunos campos de cadena abiertos. Hemos conservado las estructuras heredadas, pero las hemos marcado como obsoletas para recordarles que actualicen la última versión, ya que esto facilitará la actualización.

Nueva metodología de registro

Se ha añadido un nuevo medio de registro al SDK basado en Microsoft.Extensions.Logging. De este modo, puede configurar el registro del SDK para utilizar cualquier formato de registro que desee; puede hacerlo tan compatible con sus propios registros como desee, y no hay necesidad de registrar las salidas de nuestro SDK en sus archivos de registro.

Véase mi explicador sobre cómo está estructurado y cómo puedes ponerte manos a la obra con tus propios registros.

Añadido archivo de documentación resumida

El SDK viene ahora con un archivo docs de resumen para que le resulte más fácil determinar cómo proceder para crear sus aplicaciones.

Nueva metodología de tratamiento de errores

Si se produce un error, todas las llamadas a la API lanzarán una excepción que contendrá una descripción de lo que ha fallado. Esto incluye todas las respuestas 4xx, 5xx y los errores de la aplicación SMS, Numbers, Numbersy Verify que podrían responder con una respuesta 200 OK y un código de error. Todas estas excepciones serán del tipo NexmoException (Subtipos NexmoSmsResponseException, NexmoNumberInsightResponseException, NexmoNumberResponseException, NexmoVerifyResponseException) o NexmoHttpRequestException.

También se producirán errores similares en las API heredadas.

Bajo el capó

También hemos introducido algunas mejoras significativas que, aunque menos relevantes para la interacción con la API, pueden resultar interesantes.

Métodos internos de solicitud refactorizados

Hemos refactorizado todos los métodos internos ApiRequest para hacerlos más fáciles de usar y genéricos. Puede echar un vistazo aquí.

Nota: Estos métodos no se consideran parte de la API pública del SDK y están sujetos a cambios sin previo aviso.

Pruebas unitarias

Hemos añadido todo un nuevo conjunto de pruebas unitarias para evitar que las cosas se rompan al salir por la puerta. La cobertura de las pruebas unitarias ha pasado del 33% en la versión 4.4.0 al 87% en la 5.0. Prácticamente todo lo que no se prueba es heredado o un archivo de terceros que hemos incorporado al SDK.

Cambios de última hora

Hemos hecho todo lo posible para que la actualización a la versión 5.0 sea lo más fluida posible.

Las nuevas estructuras no deberían afectar a los usuarios actuales del SDK, aunque animo a todos a prestar atención a las advertencias de obsolescencia. Dicho esto, hay un par de cambios de última hora entre 4.x y 5.x que debes conocer.

  • Hemos eliminado LibLog, por lo que sin acción por parte del desarrollador los logs dejarán de entremezclarse con los logs del desarrollador.

  • Se lanzarán nuevas excepciones en caso de que se encuentre algún error en una llamada a la API, esto incluye respuestas 200 con códigos de error.

Hay más por venir

Esta nueva biblioteca supone un cambio radical para el SDK .NET, pero es sólo el principio. Tenemos mucho más por venir y estoy deseando compartir más con ustedes en el futuro.

Hasta entonces, si tienes alguna pregunta no dudes en encontrarnos en nuestra comunidad slack.

Recursos

  • Puede encontrar nuestro paquete NuGet aquí

  • Nuestro SDK se mantiene en GitHubsiéntase libre de venir y explorar, abrir un problema si se encuentra con uno, o tal vez incluso contribuir al esfuerzo.

Compartir:

https://a.storyblok.com/f/270183/384x384/73d57fd8eb/stevelorello.png
Steve LorelloAntiguos alumnos de Vonage

Antiguo desarrollador .NET Advocate @Vonage, ingeniero de software poliglota full-stack, AI/ML