automate 1x - PaulDuvall/aws-compliance-workshop GitHub Wiki

Lesson 1.5

The AWS Cloud Development Kit (CDK) is an open source software development framework you can use to define cloud infrastructure using familiar programming languages such as C#/.NET, Java, Python, and TypeScript.

Provisioning cloud applications can be a challenging process that requires you to perform manual actions, write custom scripts, maintain templates, or learn domain-specific languages. AWS CDK uses the familiarity and expressive power of programming languages for modeling your applications. It provides you with high-level components that preconfigure cloud resources with proven defaults, so you can build cloud applications without needing to be an expert. AWS CDK provisions your resources in a safe, repeatable manner through AWS CloudFormation. It also enables you to compose and share your own custom components that incorporate your organization's requirements, helping you start new projects faster.

Features

  • Constructs for generating AWS infrastructure
  • Customize, share, and reuse constructs
  • Powered by AWS CloudFormation
  • Use familiar programming languages, tools, and workflows
  • Deploy infrastructure and runtime code together
  • Developer-friendly command line interface (CLI)
cdk init
cdk synth
cdk diff
cdk deploy

Benefits

Easier cloud onboarding

AWS CDK accelerates your onboarding to AWS because there are few new things to learn. CDK enables you to use your existing skills and tools, and apply those to the task of building cloud infrastructure. It also provides high-level components that preconfigure cloud resources with proven defaults, helping you build on AWS without needing to be an expert. Faster development process

AWS CDK gives you the expressive power of programming languages for defining infrastructure. Familiar features such as objects, loops, and conditions accelerate your development process. You can also use AWS CDK with your integrated development environment (IDE) to take advantage of existing productivity tools and testing frameworks.

Customizable and shareable

With AWS CDK you can design your own reusable components that meet your organization’s security, compliance, and governance requirements. Just like with any other software library, you can easily share components around your organization enabling you to rapidly bootstrap new projects with best practices by default.

No context switching

AWS CDK enables you to build your cloud application without leaving your IDE. You can write your runtime code and define your AWS resources with the same programming language.

How it works

Source