

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWSSDK for Rust を使用したシンプルなアプリケーションの作成
<a name="hello"></a>

AWSSDK for Rust の使用をすばやく開始するには、このチュートリアルに従って、 を呼び出すシンプルなアプリケーションを作成しますAWS のサービス。

## 前提条件
<a name="prerequisites"></a>

を使用するにはAWS SDK for Rust、Rust と Cargo がインストールされている必要があります。
+ Rust ツールチェーン: [https://www.rust-lang.org/tools/install](https://www.rust-lang.org/tools/install) をインストールします。
+ `cargo install cargo-component` コマンドを実行して、`cargo-component` [ツール](https://github.com/bytecodealliance/cargo-component)をインストールします

### 推奨ツール:
<a name="recommended-tools"></a>

次のオプションツールを IDE にインストールすると、コード補完やトラブルシューティングに役立てることができます。
+ rust-analyzer 拡張機能については、「[Rust in Visual Studio Code](https://code.visualstudio.com/docs/languages/rust)」を参照してください。
+ Amazon Q Developer については、「[IDE に Amazon Q Developer 拡張機能またはプラグインをインストールする](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/q-in-IDE-setup.html)」を参照してください。

## 最初の SDK アプリケーションの作成
<a name="hello-world"></a>

この手順では、DynamoDB テーブルを一覧表示する最初の SDK for Rust アプリケーションを作成します。

1. ターミナルまたはコンソールウィンドウで、アプリケーションを作成するコンピュータの場所に移動します。

1. 次のコマンドを実行して `hello_world` ディレクトリを作成し、次のようなスケルトンの Rust プロジェクトを入力します。

   ```
   $ cargo new hello_world --bin
   ```

1. `hello_world` ディレクトリに移動し、次のコマンドを使用して、必要な依存関係をアプリケーションに追加します。

   ```
   $ cargo add aws-config aws-sdk-dynamodb tokio --features tokio/full,aws-config/credentials-login
   ```

   これらの依存関係には、非同期 I/O オペレーションの実装に使用される [`tokio` クレート](https://crates.io/crates/tokio)など、DynamoDB の設定機能とサポートを提供する SDK クレートが含まれます。
**注記**  
`tokio/full` Tokio のような機能を使用しない場合、非同期ランタイムは提供されません。SDK for Rust には非同期ランタイムが必要です。  
`aws-config/credentials-login` この機能を使用すると、AWSマネジメントコンソールのサインイン認証情報がサポートされます。詳細については、[AWSSDKs](https://docs.aws.amazon.com/sdkref/latest/guide/access.html)」を参照してください。

1. 次のコードを含めるように、`src` ディレクトリの `main.rs` を更新します。

   ```
   use aws_config::meta::region::RegionProviderChain;
   use aws_config::BehaviorVersion;
   use aws_sdk_dynamodb::{Client, Error};
   
   /// Lists your DynamoDB tables in the default Region or us-east-1 if a default Region isn't set.
   #[tokio::main]
   async fn main() -> Result<(), Error> {
       let region_provider = RegionProviderChain::default_provider().or_else("us-east-1");
       let config = aws_config::defaults(BehaviorVersion::latest())
           .region(region_provider)
           .load()
           .await;
       let client = Client::new(&config);
   
       let resp = client.list_tables().send().await?;
   
       println!("Tables:");
   
       let names = resp.table_names();
   
       for name in names {
           println!("  {}", name);
       }
   
       println!();
       println!("Found {} tables", names.len());
   
       Ok(())
   }
   ```
**注記**  
この例では、結果の最初のページのみを表示しています。複数のページの結果を処理する方法については、「[AWS SDK for Rust でページ分割された結果を使用する](paginating.md)」を参照してください。

1. 以下のプログラムを実行します。

   ```
   $ cargo run
   ```

   テーブル名のリストが表示されます。