Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
Search
NRI Netcom
PRO
February 28, 2025
Technology
2
210
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
NRI Netcom
PRO
February 28, 2025
Tweet
Share
More Decks by NRI Netcom
See All by NRI Netcom
IAMのマニアックな話 2025を執筆して、 見えてきたAWSアカウント管理の現在
nrinetcom
PRO
4
550
Google Cloud Next 2025 最新トレンドを キャッチアップ
nrinetcom
PRO
2
79
「Google Cloud Next '25」で発表されたBigQuery の最新機能を使ってみよう
nrinetcom
PRO
2
73
AWSマンスリーアップデートピックアップ!! 2025年3月分
nrinetcom
PRO
0
110
マルチアカウント管理で必須!AWS Organizationsの機能とユースケース解説
nrinetcom
PRO
1
180
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
10
1.3k
IAMのマニアックな話2025
nrinetcom
PRO
10
3.2k
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
5
7.2k
マルチアカウント環境における組織ポリシーについて まとめてみる
nrinetcom
PRO
2
160
Other Decks in Technology
See All in Technology
AI技術トレンド勉強会 #1MCPの基礎と実務での応用
nisei_k
1
190
原則から考える保守しやすいComposable関数設計
moriatsushi
2
280
New Cache Hierarchy for Container Images and OCI Artifacts in Kubernetes Clusters using Containerd / KubeCon + CloudNativeCon Japan
pfn
PRO
0
150
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
160
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
1.7k
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.6k
“プロダクトを好きになれるか“も QAエンジニア転職の大事な判断基準だと思ったの
tomodakengo
0
130
Securing your Lambda 101
chillzprezi
0
260
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
7.3k
ObsidianをMCP連携させてみる
ttnyt8701
2
110
Amplifyとゼロからはじめた AIコーディング 成果と展望
mkdev10
1
190
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
4
1.6k
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
46
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Designing Experiences People Love
moore
142
24k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Fireside Chat
paigeccino
37
3.5k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Rails Girls Zürich Keynote
gr2m
94
14k
Music & Morning Musume
bryan
46
6.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How GitHub (no longer) Works
holman
314
140k
Being A Developer After 40
akosma
90
590k
Transcript
2025年2月26日 Amazon Q Developerの無料利用枠を使い倒して Hello worldを表示させよう! NRIネットコム株式会社 NTシステム事業一部 NTシステム開発二課 松澤
武志 NRIネットコム×シーイーシー共催ウェビナー
2 Copyright(C) NRI Netcom, Ltd. All rights reserved. 1.自己紹介 2.Amazon
Q Developerについて 3.Amazon Q Developerの無料利用枠で アプリを作ってみた 4.まとめ 目次
3 Copyright(C) NRI Netcom, Ltd. All rights reserved. 1. 自己紹介
4 Copyright(C) NRI Netcom, Ltd. All rights reserved. ◼名前:松澤武志(まつざわたけし) ◼NRIネットコム株式会社(2024年入社)NTシステム事業一部配属
⚫ Javaアプリケーションエンジニア ⚫ AWS業務で全然使っていません ◼趣味:お弁当作り ⚫ 同期におすそわけして好評です ⚫ Notionでお弁当まとめサイトを作っています ◼好きなAWSサービス: 自己紹介 Amazon SageMaker
5 Copyright(C) NRI Netcom, Ltd. All rights reserved. 2. AmazonQ
Developerについて
6 Copyright(C) NRI Netcom, Ltd. All rights reserved. こんな時にAmazon Q
Developerが便利です! 生成AIにコード 書いてもらったらいいのに… 皆さんはこんなことを思ったことはありませんか?
7 Copyright(C) NRI Netcom, Ltd. All rights reserved. Amazon Qとは
2. AmazonQ Developerについて 一言で言うと……生成AIアシスタントサービス Amazon Q Business Amazon Q Developer Amazon Q
8 Copyright(C) NRI Netcom, Ltd. All rights reserved. Amazon Q
Business 2. AmazonQ Developerについて 企業内のデータや情報に基づいて回答を生成 Ex) 「明日のミーティングは何時から」 →「13時からです」 生成AIを活用したビジネス向けのサービス 画像引用・参考:Amazon Q Apps の一般公開を開始、 独自の生成 AI アプリ構築が可能に Amazon Q Apps内でアプリケーションの作成 • プロンプトに命令するだけ • タスクの自動化が可能
9 Copyright(C) NRI Netcom, Ltd. All rights reserved. Amazon Q
Developer 2. AmazonQ Developerについて 参考:Amazon Q - 生成 AI 搭載アシスタント アプリケーション のコーディング テスト レガシーなコード のモダナイズ エラー診断 セキュリティ スキャン AWSリソースの 最適化 開発におけるあらゆるタスクをサポート • JetBrains社のIDE • InteliJ • VS Code • Visual Studio • Eclipse(プレビュー) さまざまなIDEでサポート
10 Copyright(C) NRI Netcom, Ltd. All rights reserved. Amazon Q
Developerコマンド一覧 • コードやファイルの生成 /dev • レガシーなコードのアップグレード /transform • サービスに関するヘルプ /help • セッションの切断 /clear re:Invent 2024で発表! • ユニットテストの自動生成 /test(new!) • コードレビューの実行 /review(new!) • コードをもとにReadmeファイル、データフロー図を自動生成 /doc(new!) 2. AmazonQ Developerについて
11 Copyright(C) NRI Netcom, Ltd. All rights reserved. これからますます開発が手軽 にできそう!
12 Copyright(C) NRI Netcom, Ltd. All rights reserved. 3. Amazon
Q Developerの無料利用枠でHelloWorldを表示させてみた
13 Copyright(C) NRI Netcom, Ltd. All rights reserved. 事前準備 (Amazon
Q Developerのプラグインインストール) ◼IDE:JetBrains社「InteliJ IDEA」 ◼Amazon Q プラグインのインストール ◼インストール後、自身のAWSアカウントでログイン 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
14 Copyright(C) NRI Netcom, Ltd. All rights reserved. 事前準備 (Spring
Initializerによるプロジェクトの作成) ◼Spring Initializerでamazonqプロジェクトの新規作成 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
15 Copyright(C) NRI Netcom, Ltd. All rights reserved. ルール ◼Amazon
Q Developer Agent(/devコマンド)は1か月に5回利用できる(無料利用枠) ⚫プロンプトに5回命令! ◼UI上で「Hello World」を表示させる簡単なアプリケーションを作成 ◼プロンプトの入力内容は日本語で考える→Deeplで英語翻訳 ⚫2024年11月ではAmazon Q Developerは日本語未対応 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
16 Copyright(C) NRI Netcom, Ltd. All rights reserved. いざ使ってみよう!
17 Copyright(C) NRI Netcom, Ltd. All rights reserved. 1. HelloWorldを表示させるコントローラーを作成してください
3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた プロンプトに命令→コード生成の様子 • 変更点の要約 • 参照したファイル・作成したファイル等 の記載 • Accept All changesで変更を適用
18 Copyright(C) NRI Netcom, Ltd. All rights reserved. 1. HelloWorldを表示させるコントローラーを作成してください
3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた ◼HelloWorldController.javaの新規作成 ⚫Controllerクラスを新規生成!!
19 Copyright(C) NRI Netcom, Ltd. All rights reserved. いざ実行!…できない 次に起動方法を教えてもらうことに
20 Copyright(C) NRI Netcom, Ltd. All rights reserved. 2. このアプリケーションを起動させてください
◼Action.md ⚫.\gredlew.bat bootRun を実行すれば実行できる 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
21 Copyright(C) NRI Netcom, Ltd. All rights reserved. いざ実行!…できない(2回目) org.springframework.boot.docker.compose.core.DockerProcessStartExc
eption: Unable to start docker process. Is docker correctly installed? そういえばDockerを起動していない… 「compose.yaml」にservicesしか記載なかった…
22 Copyright(C) NRI Netcom, Ltd. All rights reserved. 3. このアプリケーションをlocalhost:8080で起動させるために必要な
コンテナを起動させる情報をcompose.yamlに記載してください ◼compose.yamlの修正 ⚫「docker-compose -f compose.yaml build」でコンテナ起動! 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
23 Copyright(C) NRI Netcom, Ltd. All rights reserved. コンテナ起動できない… Dockerイメージを出力するための「Dockerfile」がなかった…
24 Copyright(C) NRI Netcom, Ltd. All rights reserved. 4. Dockerファイルを作成し、compose.ymlでDockerファイルを指定してください
◼Dockerfile ⚫「docker-compose -f compose.yaml build」でコンテナ起動! 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
25 Copyright(C) NRI Netcom, Ltd. All rights reserved. コンテナ起動できない…(2回目) FROM句で指定するDockerイメージを変更
COPY句のパスを変更 ポート番号を8081に変更 などなど
26 Copyright(C) NRI Netcom, Ltd. All rights reserved. 起動完了!!! 3.
Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
27 Copyright(C) NRI Netcom, Ltd. All rights reserved. あと1回でAPIの作成 仮定
• taskテーブルが存在 • カラムとしてタスク期限、タスク名(型や主キー等は特に決めない) • POSTリクエストを受け付けるAPIを作成
28 Copyright(C) NRI Netcom, Ltd. All rights reserved. 5. タスク、日付が情報として格納されるPOSTリクエストを受け付け、
taskテーブルにデータを格納するAPIを作成してください ◼APIに必要なController、Entity、Repository等のファイルを新規作成! ◼TaskController.java(→) ◼Application.java(↓) 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
29 Copyright(C) NRI Netcom, Ltd. All rights reserved. 5. タスク、日付が情報として格納されるPOSTリクエストを受け付け、
taskテーブルにデータを格納するAPIを作成してください ◼Task.java(右) ◼TaskRepository.java(左上) ◼Application.properties(左下) 3. Amazon Q Developerの無料利用枠でHelloWorldを表示させてみた
30 Copyright(C) NRI Netcom, Ltd. All rights reserved. しかし、複数の課題が… アプリケーションクラスは既存と別で実装されてしまった
コントローラーやリポジトリなどが同一パッケージに格納
31 Copyright(C) NRI Netcom, Ltd. All rights reserved. 無料利用枠終了!!
32 Copyright(C) NRI Netcom, Ltd. All rights reserved. 4. まとめ
33 Copyright(C) NRI Netcom, Ltd. All rights reserved. ◼すべて生成AIに丸投げでアプリケーションを作るのは厳しい ◼1つのコマンドで様々なことをやってもらうように大雑把な命令が効率的
⚫APIを作成してください→5つのファイル作成 ⚫コントローラーの作成→1つのファイル作成 ◼細かな設定はAmazonQに任せずに自分でコードを書いた方が速い ⚫環境設定を間違えることが多い ◼プロンプトエンジニアリングの技術も必要 ⚫Applicationファイルを1つに統一したかったのに2つ作成されてしまった ◼Java等のプログラミング言語を出力するだけでなく、mdファイルも出力される点は便利 ⚫/docコマンドでさらに高度なReadmeファイルも作成される まとめ
34 Copyright(C) NRI Netcom, Ltd. All rights reserved. 皆さんもAmazon Q
Developer を 使ってみましょう!
None