AWS CDK のサポートされているプログラミング言語 - AWS Cloud Development Kit (AWS CDK) v2

これは AWS CDK v2 開発者ガイドです。旧版の CDK v1 は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。

AWS CDK のサポートされているプログラミング言語

AWS Cloud Development Kit (AWS CDK) には、次の汎用プログラミング言語に対するファーストクラスサポートがあります。

  • TypeScript

  • JavaScript

  • Python

  • Java

  • C#

  • Go

その他の JVM や .NET CLR 言語も理論上使用できますが、現時点では公式なサポートを提供していません。

AWS CDK は TypeScript という 1 つの言語で開発されています。他の言語をサポートするため、AWS CDK は JSII と呼ばれるツールを活用して言語バインディングを生成します。

AWS CDK を使用した開発ができるだけ自然で直感的にするため、各言語の通常の規則を提供することに取り組んでいます。例えば、任意の言語の標準リポジトリを使用して AWS コンストラクトライブラリモジュールを配布し、ユーザーは言語の標準パッケージマネージャーを使用してインストールします。メソッドおよびプロパティも、言語の推奨命名パターンを使用して名前が付けられます。

次の内容は、いくつかのコード例です。

TypeScript
const bucket = new s3.Bucket(this, 'amzn-s3-demo-bucket', { bucketName: 'amzn-s3-demo-bucket', versioned: true, websiteRedirect: {hostName: 'aws.amazon.com'}});
JavaScript
const bucket = new s3.Bucket(this, 'amzn-s3-demo-bucket', { bucketName: 'amzn-s3-demo-bucket', versioned: true, websiteRedirect: {hostName: 'aws.amazon.com'}});
Python
bucket = s3.Bucket("amzn-s3-demo-bucket", bucket_name="amzn-s3-demo-bucket", versioned=True, website_redirect=s3.RedirectTarget(host_name="aws.amazon.com"))
Java
Bucket bucket = Bucket.Builder.create(self, "amzn-s3-demo-bucket") .bucketName("amzn-s3-demo-bucket") .versioned(true) .websiteRedirect(new RedirectTarget.Builder() .hostName("aws.amazon.com").build()) .build();
C#
var bucket = new Bucket(this, "amzn-s3-demo-bucket", new BucketProps { BucketName = "amzn-s3-demo-bucket", Versioned = true, WebsiteRedirect = new RedirectTarget { HostName = "aws.amazon.com" }});
Go
bucket := awss3.NewBucket(scope, jsii.String("amzn-s3-demo-bucket"), &awss3.BucketProps { BucketName: jsii.String("amzn-s3-demo-bucket"), Versioned: jsii.Bool(true), WebsiteRedirect: &awss3.RedirectTarget { HostName: jsii.String("aws.amazon.com"), }, })
注記

これらのコードスニペットは、あくまでも説明用に使用されています。不完全なため、そのままでは実行されません。

AWS コンストラクトライブラリは、NPM、PyPi、Maven、NuGet などの各言語の標準パッケージ管理ツールを使用して配布されます。各言語の「AWS CDK API リファレンス」のバージョンも提供します。

このガイドでは、AWS CDK を任意の言語で使用できるように、サポートされている言語に関する次のトピックについて説明します。

TypeScript は AWS CDK でサポートされている最初の言語であり、AWS CDK のコード例の多くは TypeScript で記述されています。このガイドには、サポートされている他の言語で TypeScript AWS CDK コードを使用するため、適応させる方法に特化したトピックが含まれています。詳細については、「TypeScript の AWS CDK を他の言語と比較」を参照してください。