VSCodeとAmazon Q Developer でノーコード開発するから私は高みの見物

# はじめに

## AmazonQって何ですか？

https://aws.amazon.com/jp/q/?trk=c7a6dda4-2145-422b-bbe8-258d95ff033f&sc_channel=ps&ef_id=EAIaIQobChMIs7egyPmcigMV4zh7Bx2JMQuvEAAYASAAEgJzovD_BwE:G:s&s_kwcid=AL!4422!3!706705912535!p!!g!!%22%E3%82%A2%E3%83%9E%E3%82%BE%E3%83%B3%20q%22!21474321550!173353350148&gclid=EAIaIQobChMIs7egyPmcigMV4zh7Bx2JMQuvEAAYASAAEgJzovD_BwE

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/fd909a8e-35a3-8d69-2236-472c9696d598.png)


以下製品との総称らしい
・Amazon Q Business
・Amazon Q Developer　←今回はこっちを使います

### Amazon Q Developerて何ですか？

https://aws.amazon.com/jp/q/developer/
>Amazon Q Developer は、コードエディタで使用できます。以下のプラグインまたは拡張機能をダウンロードして、数分で開始しましょう。 拡張機能とプラグインのインストールと使用にはデスクトップが必要です。

要はcursorのAWS版で、チャットでの対話形式でコードを生成できるようです。
現在日本語の対応はしておらず（というか英語しか対応していない）、英検3級の私は翻訳ツール必須でした。

※cursor

https://qiita.com/Jasmine_teeeeee/items/7773fc37f28f38b4081a

# やってみた

## 環境

Amazon Qは、0からプロジェクトを生み出すことはできないようなので、
今回はSpringBootで初期プロジェクトを作成して、それを改修していこうと思います。

#### Eclipse

SpringBootで初期プロジェクトを作成します。
そのまま実行環境にしてもいいですし、VSCodeでjavaを実行できるならプロジェクトを作成以降使用しません。

#### VSCode

Amazon Q Developer　のプラグインを入れてコードを生成する為に使用します。

#### AWSアカウント

AmazonQを使用するには、AWSアカウントが必要です。

#### 翻訳ツール

セキュリティ情報を扱わないのであれば、Google翻訳でも構いません。
お好きなツールを使用してください。
AWS環境があればBedrockの安いテキスト型のモデルをプレイグラウンドで使用しても良いかと思います。

## 手順

### SpringBootで初期プロジェクト作成

こちらの方の手順を参考に実行ができる状態まで進めてください。

:::note warn
注意
後続手順で、Workspaceフォルダ全体をAmazonQの解析対象にします。
空の新規フォルダとしてWorkspaceを作成してください。
:::

https://qiita.com/HyunwookPark/items/142d4be2db9a6a540143

http://localhost:8080/ にアクセスして、以下ページが表示されればOKです！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/aa1c09f3-5ac5-f1eb-242a-5c1e03f190de.png)

### VSCodeにAmazonQのプラグインをインストール

公式の手順は以下

https://aws.amazon.com/jp/q/developer/getting-started/#ide

AmazonQが使えるアカウントが作成出来たら、
VSCodeのプラグインで「Amazon Q」をインストールします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/51bdcced-dcd0-1104-c403-abc6604899a1.png)

インストールが完了するとAmazonQボタンが生えてきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/8495207b-1dba-6ba5-90c4-0ef47f55280b.png)

### チャット開通確認

こんにちはをしてみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/412d49c1-6a06-e8b8-e683-afcca5a57c4a.png)

返ってきましたね。
「メッセージには英語でのみ返信できます。メッセージを英語で言い換えてください」
と言ってますので、まだ日本語対応できていないようです。

### Workspace Indexを有効化

こんにちはを送る前の、AmazonQのメッセージを翻訳すると以下です。

>ワークスペースをコンテキストとして追加するには、IDEの設定でローカルインデックスを有効にしてください。有効にした後、質問に「@workspace」を追加すると、ワークスペースをコンテキストとして使用して回答を生成します。

とりあえず従ってみましょう。

質問に「@workspace」を入力すると、設定画面へのボタンを出してくれるので、
クリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/28ace120-27c3-637c-20ac-2418c4fac394.png)

設定画面が立ち上がるので、チェックボックスにチェックを入れます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/6a4ce265-2865-bba2-13f6-0bfc101797ed.png)

もう一度、質問に「@workspace」を追加すると回答が変化します。
（訳：何かお手伝いできることはありますか？）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/d7d021ca-4e69-a2a5-38e9-f63286b82ddb.png)

### 世界に挨拶

「JavaでHello World書いてみて」と依頼してみると、手順を示してくれました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/ef4475c5-b963-e155-68f4-d3328608530a.png)

~~cursorみたいにファイルを作成して、ファイルに遷移はできないようなので、手動で移動します。~~
→すみません。ファイル作成できました。/dev　でプロジェクトを作成すればいいみたい。
VSCode上部に検索窓があるので、指示に従って対象ファイルを開きます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/9cd1e8c7-f122-7bcd-c777-0b386860627d.png)

対象ファイルを開いた状態で、「insert at cursor」をクリックするとコードが反映されます。

:::note warn
注意
選択中のコードを修正してくれるので、ファイル全体を修正したい場合は、
対象ファイル内のすべてのコードを選択状態にしてください。（WindowsならCtrl+A）
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/6cf08c71-1506-4e1d-33d1-2139131300c8.png)

手順に従って「 http://localhost:8080/hello 」　にアクセスします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/1b45a684-3aee-ec55-86d3-5bdf63aa688f.png)

表示できました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778585/b1675219-f87c-63f2-57f3-e06a4189e174.png)

# まとめ

一度もコーディングをすることなく、Hello, Worldっが出来ました！