Join the Community

23,587
Expert opinions
41,339
Total members
358
New members (last 30 days)
191
New opinions (last 30 days)
29,160
Total comments

Use of AWS Cloud Development Kit (AWS CDK)

The AWS Cloud Development Kit (AWS CDK) is an open-source software development framework to define your cloud application resources using familiar programming languages. The AWS CDK Toolkit is a command line tool for interacting with CDK apps. It enables developers to synthesize artifacts such as AWS CloudFormation templates, deploy stacks to development AWS accounts, and diff against a deployed stack to understand the impact of a code change.

What is difference between AWS CDK and SDK?

CDK is Infrastructure as Code, which means you can write code to create AWS resources like API Gateway, DynamoDB or Lambda. On the other hand, SDK helps to interact with these AWS resources for ex: fetch the items from DynamoDB or list the contents of S3 bucket.

About AWS CDK

As a result of working on hundreds of projects, engineers have extensive experience with AWS CloudFormation (CloudFormation) and building infrastructure as code (IaC). Though CloudFormation is efficient, reliable, and effective, it is not easy to test or debug, nor is it easily scalable or reusable. In a short time, AWS Cloud Development Kit (AWS CDK) has become an invaluable tool for developer-centric DevOps teams. It is believed that AWS CDK is the beginning of a new future for IaC.

AWS CDK is an open-source software development framework for defining cloud infrastructure as code (IaC) AWS introduced in July 2019. Because AWS CDK uses CloudFormation as a foundation, it has all the advantages of CloudFormation while enabling engineers to provision IaC using modern programming languages like Typescript, C# (C-Sharp), Java, and Python. In a sense, this is AWS’s answer to HashiCorp Terraform. Note: AWS CDK is intended for moderate to highly experienced AWS users.

AWS CDK is a tool that can be used in any AWS IaC project, even the simple ones. It can be particularly useful when you want to involve your developers more with IaC (embracing a DevOps culture) so that they can leverage their expertise on the programming languages they already know.

Reuse code and create libraries and modules.

Benefits of AWS CDK

  • Enables easier cloud onboarding. Use existing skills and tools and preconfigured cloud resources with proven defaults to build cloud infrastructure. 
  • Accelerates the development process. Define the infrastructure using familiar programming languages. Testing frameworks enable unit testing within the full programming language. It can be used with your integrated development environment (IDE).
  • Is customizable and reusable. Customizable code is modular and reusable to imbue new projects with security, compliance, and governance best practices.
  • Leverages the full power of the programming language, such as conditional loops, string interpolation, etc. So, if a team uses Python, they can put their infrastructure definition in the same kind of code.
  • Performs type checking for the infrastructure to avoid compiler errors. 

For a step-by-step tutorial on creating and deploying a simple AWS CDK app, look at the AWS Developer Guide for AWS CDK.

 

 

 

 

External

This content is provided by an external author without editing by Finextra. It expresses the views and opinions of the author.

Join the Community

23,587
Expert opinions
41,339
Total members
358
New members (last 30 days)
191
New opinions (last 30 days)
29,160
Total comments

Now Hiring