description AWS CDK (Cloud Development Kit) Overview
The AWS CDK allows developers to define cloud infrastructure using familiar programming languages (TypeScript, Python, etc.). This is a powerful abstraction layer that lets software engineers build infrastructure using object-oriented principles. It is ideal for teams whose primary skill set is application development and who want to minimize context switching when provisioning AWS resources.
help AWS CDK (Cloud Development Kit) FAQ
Which programming languages can I use with the AWS CDK?
The AWS CDK officially supports TypeScript, JavaScript, Python, Java, C#, and Go. This allows developers to define their AWS infrastructure using familiar object-oriented programming concepts instead of writing declarative JSON or YAML.
How does the AWS CDK differ from AWS CloudFormation?
While CloudFormation requires you to manually write hundreds of lines of JSON or YAML, AWS CDK allows you to write code in your preferred language which is then compiled down into a CloudFormation template. This means you still get the safety of CloudFormation's deployment process but with the abstraction of modern code.
Can I use the AWS CDK to deploy resources outside of AWS?
While primarily designed for AWS, the CDK utilizes the open-source jsii framework and constructs can theoretically be written for anything, though in practice it deploys AWS CloudFormation stacks. For multi-cloud deployments, developers often look at alternatives like HashiCorp Terraform, but AWS CDK is strictly optimized for the AWS ecosystem.
What are CDK Constructs?
Constructs are the basic building blocks of AWS CDK applications, representing cloud components that can be reused and shared. They range from low-level resources that map directly to CloudFormation, to high-level abstractions with sensible defaults that can set up a complete VPC with just a few lines of code.
explore Explore More
Similar to AWS CDK (Cloud Development Kit)
See all arrow_forwardReviews & Comments
Write a Review
Be the first to review
Share your thoughts with the community and help others make better decisions.