

# Desenvolvimento com o Amazon S3 usando AWS SDKs
<a name="sdk-general-information-section"></a>



AWSOs kits de desenvolvimento de software (SDKs) da estão disponíveis para muitas linguagens de programação populares. Cada SDK fornece uma API, exemplos de código e documentação que permitem que os desenvolvedores criem facilmente aplicações em seu idioma de preferência.

**nota**  
É possível usar o AWS Amplify para o desenvolvimento full-stack de aplicações web e aplicativos móveis de ponta a ponta. O Amplify Storage integra perfeitamente os recursos de armazenamento e gerenciamento de arquivos em aplicações frontend web e aplicativos móveis, desenvolvidos com base no Amazon S3. Consulte mais informações em [Storage](https://docs.amplify.aws/react/build-a-backend/storage/) no guia do usuário do Amplify.


| Documentação do SDK | Exemplos de código | 
| --- | --- | 
| [AWS SDK para C\+\+](https://docs.aws.amazon.com/sdk-for-cpp) | [AWS SDK para C\+\+ Exemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/cpp) | 
| [AWS CLI](https://docs.aws.amazon.com/cli) | [AWS CLI Exemplos de código da](https://docs.aws.amazon.com/code-library/latest/ug/cli_2_code_examples.html) | 
| [AWS SDK para Go](https://docs.aws.amazon.com/sdk-for-go) | [AWS SDK para Go Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/gov2) | 
| [AWS SDK para Java](https://docs.aws.amazon.com/sdk-for-java) | [AWS SDK para Java Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2) | 
| [AWS SDK para JavaScript](https://docs.aws.amazon.com/sdk-for-javascript) | [AWS SDK para JavaScript Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3) | 
| [AWS SDK para Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin) | [AWS SDK para Kotlin Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin) | 
| [AWS SDK para .NET](https://docs.aws.amazon.com/sdk-for-net) | [AWS SDK para .NET Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/dotnetv3) | 
| [AWS SDK para PHP](https://docs.aws.amazon.com/sdk-for-php) | [AWS SDK para PHP Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php) | 
| [Ferramentas da AWS para PowerShell](https://docs.aws.amazon.com/powershell) | [Tools for PowerShell code examples](https://docs.aws.amazon.com/code-library/latest/ug/powershell_4_code_examples.html) | 
| [AWS SDK para Python (Boto3)](https://docs.aws.amazon.com/pythonsdk) | [AWS SDK para Python (Boto3) Exemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python) | 
| [AWS SDK para Ruby](https://docs.aws.amazon.com/sdk-for-ruby) | [AWS SDK para Ruby Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/ruby) | 
| [AWS SDK para Rust](https://docs.aws.amazon.com/sdk-for-rust) | [AWS SDK para Rust Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1) | 
| [AWS SDK para SAP ABAP](https://docs.aws.amazon.com/sdk-for-sapabap) | [AWS SDK para SAP ABAP Exemplos de código da](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/sap-abap) | 
| [AWS SDK para Swift](https://docs.aws.amazon.com/sdk-for-swift) | [AWS SDK para Swift Exemplos de código do](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/swift) | 

Para obter exemplos específicos, consulte [Exemplos de código do Amazon S3 usando SDKs da AWS](service_code_examples.md).

## Interfaces de programação do SDK
<a name="sdk-programming-interfaces"></a>

Cada AWS SDK fornece uma ou mais interfaces programáticas para trabalhar com o Amazon S3. Cada SDK fornece uma interface de baixo nível para o Amazon S3, com métodos que se assemelham a operações de API. Alguns SDKs fornecem interfaces de alto nível para o Amazon S3, que são abstrações com o objetivo de simplificar casos de uso comuns. 

Por exemplo, ao realizar um upload fragmentado usando as operações de API de baixo nível, você usa uma operação para iniciar o upload, outra operação para fazer o upload das partes e uma operação final para concluir o upload. Uma operação de API de upload fragmentado de alto nível permite que você faça todas as operações necessárias para o upload em uma única chamada de API. Para ver exemplos, consulte [Carregamento de um objeto usando o upload fragmentado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpu-upload-object.html) no *Guia do usuário do Amazon S3*.

As operações de API de baixo nível permitem maior controle sobre o upload. Recomendamos usar as operações de API de baixo nível se quiser pausar e retomar uploads, variar os tamanhos das partes durante o upload ou começar uploads quando você não sabe o tamanho dos dados com antecedência.