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
230
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
AWSで動くプログラムをC#で書こう ~主にLambdaのお話~
kenichirokimura
1
42
Alternative GitHub Secret Manager
kenichirokimura
0
77
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
550
How to use Amazon Cognito user pools with custom UI and also OIDC
kenichirokimura
0
310
あなたも今日からIoTと握手! SORACOM/SORACOM UGの紹介
kenichirokimura
1
120
推し活の1つとしての株購入~みんなでソラコムの株主になろう~
kenichirokimura
0
230
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
1.4k
SORACOM UGとは? - 2023/11/04 JAWS-UG 佐賀 x SORACOM UG 九州 バルーンフェスタSP版
kenichirokimura
0
160
IoT x 「何か」で生まれる可能性は無限大! SORACOM/SORACOM UGの紹介
kenichirokimura
0
99
Other Decks in Technology
See All in Technology
家電アプリ共通PF "Linova" のAPI利用とPostman活用事例ご紹介
yukiogawa
0
120
事業継続を支える自動テストの考え方
tsuemura
0
250
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
110
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
370
RSNA2024振り返り
nanachi
0
330
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
1.3k
Kubernetes x k6 で負荷試験基盤を開発して 負荷試験を民主化した話 / Kubernetes x k6
sansan_randd
2
700
WAF に頼りすぎない AWS WAF 運用術 meguro sec #1
izzii
0
460
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
350
第13回 Data-Centric AI勉強会, 画像認識におけるData-centric AI
ksaito_osx
0
340
20250208_OpenAIDeepResearchがやばいという話
doradora09
PRO
0
160
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
230
Featured
See All Featured
Building Applications with DynamoDB
mza
93
6.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
GraphQLとの向き合い方2022年版
quramy
44
13k
Navigating Team Friction
lara
183
15k
Designing for humans not robots
tammielis
250
25k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
8
260
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Producing Creativity
orderedlist
PRO
343
39k
Music & Morning Musume
bryan
46
6.3k
Six Lessons from altMBA
skipperchong
27
3.6k
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.