

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

# Amazon Q Developer を使用して完全な関数を生成する
<a name="full-function-generation"></a>

Amazon Q は、入力されたコメントに基づいて関数全体を生成できます。コメントを完成させると、Amazon Q は関数の署名を提案します。提案を受け入れると、Amazon Q は自動的にカーソルを関数の次の部分に進めて提案を行います。提案の合間であっても、追加のコメントやコード行を入力すると、Amazon Q は入力に基づいてリファクタリングします。

------
#### [ C ]

![\[C を使用した完全な関数補完機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/full-function-completion-c-plus.gif)


------
#### [ C\$1\$1 ]

![\[C++ を使用した完全な関数補完機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/full-function-completion-c-plus.gif)


------
#### [ JavaScript ]

次の例では、ユーザーが一連のコメントに基づいて完全な関数を生成し、編集します。

![\[完全な関数生成機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/javascript_lambda_FullFunctionGeneration.gif)


次の画像では、ユーザーが Amazon S3 からファイルを読み取るための関数署名を書いています。その後、Amazon Q は `read_from_s3` メソッドの完全実装を提案します。

![\[\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/whisper-function-read-from-s3.png)


**注記**  
前述の例のように、時々 Amazon Q は提案の一部として `import` ステートメントを含めることがあります。ベストプラクティスとして、手動でこれらの 「`import`」 ステートメントをファイルの先頭に移動します。

別の例として、次の画像では、ユーザーが関数署名を書いています。その後、Amazon Q は `quicksort` メソッドの完全実装を提案します。

![\[\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/whisper-function-quicksort.png)


Amazon Q は、提案する際に過去のコードスニペットを考慮します。次の画像では、前の例のユーザーが、提案された上記の 「`quicksort`」 の実装を受け入れました。次に、ユーザーはジェネリック 「`sort`」 方法の別の関数署名を書きます。次に、Amazon Q は既に書かれている内容に基づいて実装を提案します。

![\[\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/whisper-function-from-context-sort.png)


次の画像では、ユーザーがコメントを書いています。このコメントに基づいて、Amazon Q は関数署名を提案します。

![\[\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/whisper-comment-binary-search.png)


次の画像では、前の例のユーザーが、提案された関数署名を受け入れました。Amazon Q は、その後 `binary_search` 関数の完全な実装を提案できます。

![\[\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/whisper-function-binary-search.png)


------
#### [ Java ]

以下のリストでは、Amazon Q がどのように提案を行い、関数を作成するプロセス全体を進めるかについての例を挙げます。

1. 次の例では、ユーザーがコメントを入力します。Amazon Q は関数署名を提案します。

   ユーザーがその提案を受け入れると、Amazon Q は関数本文を提案します。  
![\[コメントから生成された関数の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/cw-c9-function-from-comment.gif)

1. 次の図では、Amazon Q からの提案を受け入れる前に、ユーザーが関数の本文にコメントを入力します。次の行で、Amazon Q がコメントに基づいて提案を生成します。  
![\[既存のコードのブロック内のコメントから生成された関数の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/cw-c9-function-from-comment-within-block.gif)

------
#### [ C\$1 ]

次の例では、Amazon Q は完全な関数を提案しています。

![\[Function declaration for ListTables with AmazonDynamoDBClient parameter in code editor.\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/c-sharp-full-function.gif)


------
#### [ TypeScript ]

次の例では、Amazon Q はユーザーの docstring に基づいて関数を生成します。

![\[完全な関数補完機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/typescript_vscode_function.gif)


------
#### [ Python ]

Amazon Q は、入力されたコメントに基づいて関数全体を生成できます。コメントを完成させると、Amazon Q は関数の署名を提案します。提案を受け入れると、Amazon Q は自動的にカーソルを関数の次の部分に進めて提案を行います。提案の合間であっても、追加のコメントやコード行を入力すると、Amazon Q は入力に基づいてリファクタリングします。

次の例では、Amazon Q は完全な関数と対応するユニットテストの両方を生成します。

![\[完全な関数補完機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/python_pycharm_fullfunction_unittests.GIF)


以下のリストでは、Amazon Q がどのように提案を行い、関数を作成するプロセス全体を進めるかについての例を挙げます。

1. 次の画像では、ユーザーがコメントを入力します。コメントの下にある関数署名は、Amazon Q からの提案です。  
![\[alt_text\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/cw-jb-comment-062022.png)

1. 次の画像では、ユーザーが関数署名の Amazon Q 提案を受け入れています。提案を受け入れるとカーソルが自動的に進み、Amazon Q が関数本文について新しい提案を行います。  
![\[alt_text\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/cw-jb-commentfunctionadvance-062022.png)

1. 下の画像では、Amazon Q からの提案を受け入れる前に、ユーザーが関数の本文にコメントを入力します。次の行で、Amazon Q がコメントの内容に基づいて新しい提案を生成しています。  
![\[コメントの内容に基づいて新しい提案を生成する\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/cw-jb-commentfunction-062022.png)

この例では、ユーザーが署名の一部を入力した後、Amazon Q が完全な関数を提案します。

![\[完全な関数機能の例。\]](http://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/images/python_sagemakerstudio_fullfunction.gif)


------