Conceitos principais do SDK do Azure para C++

O SDK do Azure para C++ fornece um conjunto de bibliotecas projetadas para ajudar os desenvolvedores de C++ a integrar os serviços do Azure em seus aplicativos. Este artigo explora os conceitos fundamentais que sustentam o SDK, incluindo a distinção entre dados e planos de gerenciamento, a função do Azure Core, convenções de nomenclatura de pacotes, objetos de cliente e opções de configuração. Compreender esses conceitos principais permitirá que você use efetivamente o SDK em seus aplicativos C++.

Plano de dados vs. plano de gestão

O SDK do Azure para C++ fornece bibliotecas para operações de plano de dados, mas não oferece bibliotecas para operações de plano de gerenciamento. As bibliotecas de plano de dados são usadas para interagir com serviços do Azure já provisionados. Se você precisar de bibliotecas de plano de gerenciamento para provisionar e gerenciar recursos do Azure em C++, deixe um problema em nosso repositório GitHub.

Azure Core vs. outras bibliotecas

A biblioteca Azure Core (azure-core) fornece funcionalidades fundamentais que outras bibliotecas criam para fornecer funcionalidades específicas para diferentes serviços do Azure. Os desenvolvedores precisam entender a função do Azure Core para usar efetivamente o SDK.

Os principais conceitos partilhados de Azure::Core incluem:

  • Manipulação de dados de streaming e entrada/saída (E/S) através do BodyStream, assim como os seus tipos derivados.
  • Aceder a detalhes da resposta HTTP para o modelo retornado de qualquer operação de um cliente SDK, via Response<T>.
  • Operações de sondagem de longa duração (LROs), via Operation<T>.
  • Exceções para relatar erros de solicitações de serviço de forma consistente por meio do tipo RequestFailedExceptionde exceção base.
  • Abstrações para credenciais TokenCredential do SDK do Azure.
  • Camada de transporte HTTP substituível para enviar solicitações e receber respostas pela rede.
  • Pipeline HTTP e políticas HTTP, como repetição e registro, que são configuráveis por meio de opções específicas do cliente de serviço.

Esquema de nomenclatura de pacotes

O SDK do Azure para C++ usa um esquema de nomenclatura consistente: azure-<group_name>-<service_name>-<sub_service_name>. Cada nome começa com azure-, seguido pelo grupo, serviço e, opcionalmente, um subserviço. Por exemplo, azure-security-keyvault-secrets é para segredos do Azure Key Vault.

Objetos de cliente

Os objetos de cliente no SDK do Azure para C++ são usados para interagir com os serviços do Azure. Cada objeto de cliente corresponde a um serviço específico do Azure e fornece métodos para executar operações nesse serviço. Por exemplo, BlobClient é usado para interagir com o Armazenamento de Blobs do Azure.

Parâmetro de opções para objetos cliente

Os objetos cliente no SDK do Azure para C++ têm métodos que usam um parâmetro options para personalizar as interações com o serviço. Esses parâmetros de opções podem ser usados para definir coisas como tempos limites, políticas de repetição e outras configurações.