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
170
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
NRI Netcom
PRO
February 28, 2025
Tweet
Share
More Decks by NRI Netcom
See All by NRI Netcom
AWSマンスリーアップデートピックアップ!! 2025年3月分
nrinetcom
PRO
0
77
マルチアカウント管理で必須!AWS Organizationsの機能とユースケース解説
nrinetcom
PRO
1
140
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
8
1.1k
IAMのマニアックな話2025
nrinetcom
PRO
9
2.5k
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
5
7.1k
マルチアカウント環境における組織ポリシーについて まとめてみる
nrinetcom
PRO
2
140
内製化を加速させるlaC活用術
nrinetcom
PRO
2
200
組織におけるCCoEの役割とAWS活用事例
nrinetcom
PRO
4
180
CNAPPから考えるAWSガバナンスの実践と最適化
nrinetcom
PRO
1
700
Other Decks in Technology
See All in Technology
Recap of Next - Google Cloud で実践する クラウドネイティブ最前線 / The Frontlines of Cloud-Native with Insights from Google Cloud
aoto
PRO
1
100
Les nouveautés d'OKDP - Open Kubernetes Data Platform
bluehats
0
110
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
110
Mastraに入門してみた ~AWS CDKを添えて~
tsukuboshi
0
100
食べログが挑む!飲食店ネット予約システムで自動テスト無双して手動テストゼロを実現する戦略
hagevvashi
3
410
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #DevOpsDaysTokyo
takabow
0
370
Webアプリを Lambdaで動かすまでに考えること / How to implement monolithic Lambda Web Application
_kensh
7
1.3k
サーバレス、コンテナ、データベース特化型機能をご紹介。CloudWatch をもっと使いこなそう!
o11yfes2023
0
150
アセスメントで紐解く、10Xのデータマネジメントの軌跡
10xinc
1
420
Terraform Cloudで始めるおひとりさまOrganizationsのすゝめ
handy
2
160
DETR手法の変遷と最新動向(CVPR2025)
tenten0727
2
1.3k
バックオフィス向け toB SaaS バクラクにおけるレコメンド技術活用 / recommender-systems-in-layerx-bakuraku
yuya4
5
520
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
Six Lessons from altMBA
skipperchong
27
3.7k
Unsuck your backbone
ammeep
670
57k
YesSQL, Process and Tooling at Scale
rocio
172
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Documentation Writing (for coders)
carmenintech
69
4.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Fireside Chat
paigeccino
37
3.4k
Faster Mobile Websites
deanohume
306
31k
A Modern Web Designer's Workflow
chriscoyier
693
190k
How to Ace a Technical Interview
jacobian
276
23k
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