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で.NET Frameworkプロジェクトをモダナイズしてみた
Search
Ken'ichirou Kimura
January 11, 2025
Technology
1
120
Amazon Q Developerで.NET Frameworkプロジェクトをモダナイズしてみた
2025/1/11に開催された.NET Conf 2024 Fukuoka x OsakaでのLT資料です。
https://fukuten.connpass.com/event/333954/
Ken'ichirou Kimura
January 11, 2025
Tweet
Share
More Decks by Ken'ichirou Kimura
See All by Ken'ichirou Kimura
Alternative GitHub Secret Manager
kenichirokimura
0
72
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
520
How to use Amazon Cognito user pools with custom UI and also OIDC
kenichirokimura
0
270
あなたも今日からIoTと握手! SORACOM/SORACOM UGの紹介
kenichirokimura
1
120
推し活の1つとしての株購入~みんなでソラコムの株主になろう~
kenichirokimura
0
220
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
1.3k
SORACOM UGとは? - 2023/11/04 JAWS-UG 佐賀 x SORACOM UG 九州 バルーンフェスタSP版
kenichirokimura
0
150
IoT x 「何か」で生まれる可能性は無限大! SORACOM/SORACOM UGの紹介
kenichirokimura
0
94
App Runnerで始める、AWSでの C#生活
kenichirokimura
0
210
Other Decks in Technology
See All in Technology
Storage Browser for Amazon S3
miu_crescent
1
340
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.7k
[JAWS-UG新潟#20] re:Invent2024 -CloudOperationsアップデートについて-
shintaro_fukatsu
0
150
mixi2 の技術スタックを探ってみる (アプリ編)
ichiki1023
0
110
スケールし続ける事業とサービスを支える組織とアーキテクチャの生き残り戦略 / The survival strategy for Money Forward’s engineering.
moneyforward
0
230
Storage Browser for Amazon S3を触ってみた + α
miura55
0
100
新しいスケーリング則と学習理論
taiji_suzuki
9
3.6k
非機能品質を作り込むための実践アーキテクチャ
knih
6
1.8k
ソフトウェア開発における「パーフェクトな意思決定」/Perfect Decision-Making in Software Development
yayoi_dd
2
2.7k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
150
ハイテク休憩
sat
PRO
2
190
エンジニアリングマネージャー視点での、自律的なスケーリングを実現するFASTという選択肢 / RSGT2025
yoshikiiida
4
2.7k
Featured
See All Featured
Fireside Chat
paigeccino
34
3.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Faster Mobile Websites
deanohume
305
30k
Why Our Code Smells
bkeepers
PRO
335
57k
YesSQL, Process and Tooling at Scale
rocio
170
14k
Practical Orchestrator
shlominoach
186
10k
Transcript
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. Amazon Q
Developerで .NET Frameworkプロジェクトを モダナイズしてみた 木村健一郎 2025年1月11日 .NET Conf Fukuoka x Osaka
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 名前 :木村健一郎
所属 :株式会社オルターブース SORACOM UG九州 JAWS-UG福岡 娘ちゃんのパパ(7歳6ヶ月) お仕事:IoT番長 受賞歴:SORACOM MVC 2021,2023 AWS Samurai 2019 APJ Commnity Award 2023(Ownership) 気になる.NET :.NET nanoFramework 好きなAWSサービス :Lambda、App Runner、IoT Core SNS : @show_m001
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved.
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. Amazon Qとは
• AWSの、生成AIを利用したアシスタントサービス • Amazon Q BusinessとAmazon Q Developerがある • まぁAWSのCopilotみたいなものでAmazon Q Developerが GitHub Copilotと思えば良さそう(雑)
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 昨年のre:Invent2024 こんな発表がありました
https://aws.amazon.com/jp/blogs/aws/announcing- amazon-q-developer-transformation-capabilities-for-net- preview/
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 要約すると •
これまで.NET Frameworkから.NETへの移行ツールを提供し てきた • Porting Assistant for .NET • AWS Toolkit for .NET Refactoring • AWS Microservice Extractor for .NET • 今回、Amazon Q Developer transform for .NETをプレ ビューで発表した • Amazon Q Developerの力で変換プランを生成し、タスクを実行する • つまりGitHub Copilot Upgrade Assistant for .NETの Amazon Q Developer版
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 早速やってみた やったこと
1. AWS Toolkit with Amazon QをVS2022にインストール 2. サンプルとして準備した.NET Framework Webアプリケー ション(MVC)を開く 3. コンテキストメニューから「Port project with Amazon Q Developer」を選ぶ 4. プランとタスクを確認して適用 5. 手動で解決すべき事を実施
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. とりあえずサンプルのプロジェクトをビルドして実行したらこんな感じ
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. ソリューションを右クリックしてコンテキストメニューから「Port solution
with Amazon Q Developer」を選びます。 ターゲットはLTS(net8.0)しか選べませんでした。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. しばらく待ってると無事変換が完了。4:41で終わってますね。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 実施されたタスクの一覧を見てみるとこんな感じ。 appsettings.jsonやProgram.csやStartup.csを作ったり、cssやviewの場所が移動したり、
Controllerを書き換えたりと、だいたい見慣れた変換が行われてます。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. Controllerの変換タスクの詳細でdiffを見てみるとこんな感じ。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. タスクを全部適用したらそれで完了・・とはいきません。 今回の場合はviewのcshtmlは手動の対応が必要でしたので手で直していきます。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 無事ビルドできて起動できました。
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 番長~、Web Formsの
プロジェクトがたくさん あるんだけど・・・
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 変換できるプロジェクトタイプは ・コンソールアプリ
・クラスライブラリ ・Web API ・WCF Service ・MVCとSPAのビジネスロジックレイヤー ・テスト サポートしてないプロジェクトはスキップするよ
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. 対 応
プ ロ ジ ェ ク ト タ イ プ に 入 っ て な い か ら
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved. まとめ •
Amazon Q Developer transform for .NETで、.NET Frameworkのプロジェクトを最新の.NETに変換できた • 簡単なMVCのプロジェクトしか試してないけど、対応してる部分は全 て完全に自動で変換してくれて精度は良さそうな印象 • 今後、他のタイプや複雑なものも試してみたい • 対応してないプロジェクトタイプは無視されるので、MVCの Viewなどは手動の対応が必要 • 機械的に置き換えできそうな所くらいはGAまでに何とかならないかと 期待 • Web Formsは・・・
Copyright © 2015-2023 ALTERBOOTH inc. All Rights Reserved.