

Este é o Guia do desenvolvedor do AWS CDK v2. O CDK v1 antigo entrou em manutenção em 1º de junho de 2022 e encerrou o suporte em 1º de junho de 2023.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Conheça os principais AWS conceitos do CDK
<a name="core-concepts"></a>

Conheça os principais conceitos por trás do AWS Cloud Development Kit (AWS CDK).

## AWS CDK e IaC
<a name="concepts-iac"></a>

O AWS CDK é uma estrutura de código aberto que você pode usar para gerenciar sua AWS infraestrutura usando código. Essa abordagem é conhecida como *infraestrutura como código (IaC)*. Ao gerenciar e provisionar sua infraestrutura como código, você trata sua infraestrutura da mesma forma que os desenvolvedores tratam o código. Isso oferece muitos benefícios, como controle de versão e escalabilidade. Para saber mais sobre o IaC, consulte [O que é infraestrutura como código?](https://aws.amazon.com/what-is/iac/) 

## AWS CDK e AWS CloudFormation
<a name="concepts-cfn"></a>

O AWS CDK está totalmente integrado com o. AWS CloudFormation AWS CloudFormation é um serviço totalmente gerenciado que você pode usar para gerenciar e provisionar sua infraestrutura AWS. Com AWS CloudFormation, você define sua infraestrutura em modelos e os implanta em AWS CloudFormation. O AWS CloudFormation serviço então provisiona sua infraestrutura de acordo com a configuração definida em seus modelos.

 AWS CloudFormation os modelos são *declarativos*, o que significa que eles declaram o estado ou o resultado desejado de sua infraestrutura. *Usando JSON ou YAML, você declara sua AWS infraestrutura definindo AWS *recursos* e propriedades.* Os recursos representam os vários serviços AWS e as propriedades representam a configuração desejada desses serviços. Quando você implanta seu modelo em AWS CloudFormation, seus recursos e suas propriedades configuradas são provisionados conforme descrito em seu modelo.

Com o AWS CDK, você pode gerenciar sua infraestrutura de *forma imperativa*, usando linguagens de programação de uso geral. Em vez de apenas definir um estado desejado declarativamente, você pode definir a lógica ou a sequência necessária para alcançar o estado desejado. Por exemplo, você pode usar instruções `if` ou loops condicionais que determinam como alcançar o estado final desejado para sua infraestrutura.

A infraestrutura criada com o AWS CDK é eventualmente traduzida ou *sintetizada* em AWS CloudFormation modelos e implantada usando o serviço. AWS CloudFormation Portanto, embora o AWS CDK ofereça uma abordagem diferente para criar sua infraestrutura, você ainda recebe os benefícios de AWS CloudFormation, como amplo suporte à configuração de AWS recursos e processos robustos de implantação.

Para saber mais AWS CloudFormation, consulte [O que é AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) no *Guia do AWS CloudFormation usuário*.

## AWS CDK e abstrações
<a name="concepts-abstractions"></a>

Com AWS CloudFormation, você deve definir todos os detalhes de como seus recursos são configurados. Isso oferece a vantagem de ter controle total sobre sua infraestrutura. No entanto, isso exige que você aprenda, compreenda e crie modelos robustos que contenham detalhes de configuração de recursos e relacionamentos entre recursos, como permissões e interações orientadas por eventos.

Com o AWS CDK, você pode ter o mesmo controle sobre suas configurações de recursos. No entanto, o AWS CDK também oferece abstrações poderosas, que podem acelerar e simplificar o processo de desenvolvimento da infraestrutura. Por exemplo, o AWS CDK inclui construções que fornecem configurações padrão sensatas e métodos auxiliares que geram código padronizado para você. O AWS CDK também oferece ferramentas, como a AWS CDK Command Line Interface (AWS CDK CLI), que executam ações de gerenciamento de infraestrutura para você.

## Saiba mais sobre os principais conceitos do AWS CDK
<a name="concepts-learn"></a><a name="concepts-learn-interact"></a>

 **Interagindo com o CDK AWS **   
Ao usar com o AWS CDK, você interagirá principalmente com a AWS Construct Library e a AWS CDK CLI.<a name="concepts-learn-develop"></a>

 **Desenvolvendo com o AWS CDK**   
O AWS CDK pode ser escrito em qualquer [linguagem de programação compatível](languages.md). Você começa com um [projeto do CDK](projects.md), que contém uma estrutura de pastas e arquivos, incluindo [ativos](assets.md). Dentro do projeto, você cria uma aplicação[ do CDK](apps.md). Dentro do aplicativo, você define uma [pilha](stacks.md), que representa diretamente uma CloudFormation pilha. Dentro da pilha, você define seus AWS recursos e propriedades usando [construções](constructs.md).<a name="concepts-learn-deploy"></a>

 **Implantação com o CDK AWS **   
Você implanta aplicações do CDK em um [ambiente](environments.md) da AWS . Antes da implantação, você deve executar um único [bootstrapping](bootstrapping.md) para preparar seu ambiente.<a name="concepts-learn-more"></a>

 **Saiba mais**   
Para saber mais sobre os principais conceitos do AWS CDK, consulte os tópicos desta seção.