AWS CDK ConceptsΒΆ

This topic describes some of the concepts (the why and how) behind the AWS CDK. It also discusses the advantages of a AWS Construct Library over a low-level CloudFormation Resource.

AWS CDK apps are represented as a hierarchal structure we call the construct tree. Every node in the tree is a _aws-cdk_core.Construct object. The root of an AWS CDK app is typically an _aws-cdk_core.App construct. Apps contain one or more _aws-cdk_core.Stack constructs, which are deployable units of your app.

This composition of constructs gives you the flexibility to architect your app, such as having a stack deployed in multiple regions. Stacks represent a collection of AWS resources, either directly or indirectly through a child construct that itself represents an AWS resource, such as an Amazon SQS queue, an Amazon SNS topic, an Lambda function, or an DynamoDB table.

This composition of constructs also means you can easily create sharable constructs, and make changes to any construct and have those changes available to consumers as shared class libraries.