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
.NET 8 がリリース直前だから振り返る
Search
Yuta Matsumura
October 28, 2023
Technology
0
660
.NET 8 がリリース直前だから振り返る
登壇資料です
Fukuoka.NET #25 - connpass
https://fukuten.connpass.com/event/297072/
Yuta Matsumura
October 28, 2023
Tweet
Share
More Decks by Yuta Matsumura
See All by Yuta Matsumura
GitHub Copilot CLI を使いやすくしよう
tsubakimoto_s
0
110
AspireとGitHub Modelsで作るお手軽AIアプリ
tsubakimoto_s
0
64
Memories of GitHub Universe & San Francisco
tsubakimoto_s
0
54
私のMCPの使い方
tsubakimoto_s
0
160
これからはじめる Model Context Protocol
tsubakimoto_s
0
70
Cloudflare の MCP サーバーをためしてみた
tsubakimoto_s
1
160
re:Invent の裏でアップデートされていた .NET Aspire で統合するAWS のクラウドリソース
tsubakimoto_s
1
140
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
350
Microsoft Entra External IDとAzure AD B2C
tsubakimoto_s
0
2.5k
Other Decks in Technology
See All in Technology
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
130
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
230
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
22nd ACRi Webinar - 1Finity Tamura-san's slide
nao_sumikawa
0
110
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
520
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
590
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
270
Greatest Disaster Hits in Web Performance
guaca
0
300
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
150
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
460
The Pragmatic Product Professional
lauravandoore
37
7.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
The Invisible Side of Design
smashingmag
302
51k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
180
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
430
The SEO Collaboration Effect
kristinabergwall1
0
360
Git: the NoSQL Database
bkeepers
PRO
432
66k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
58
50k
Transcript
#fukuten .NET 8 がリリース直前だから振り返る 2023/10/26 Fukuoka.NET #25 Yuta Matsumura ©
2023 Yuta Matsumura.
#fukuten 松村 優大 (Yuta Matsumura) Currently working for © 2023
Yuta Matsumura. Chief Technical Architect C#, PHP, Azure, GitHub が好き Microsoft MVP (Developer Technologies) #fukuten #devblogradio の中の人 @tsubakimoto_s
#fukuten © 2023 Yuta Matsumura.
#fukuten .NET Conf 2023 • https://www.dotnetconf.net/ • 2023/11/14~16 開催 •
参加無料のオンデマンド配信・アーカイブあり • .NET 次期バージョンの正式リリース時期 © 2023 Yuta Matsumura.
#fukuten © 2023 Yuta Matsumura. https://dotnet.microsoft.com/ja-jp/platform/support/policy/dotnet-core
#fukuten © 2023 Yuta Matsumura. https://dotnet.microsoft.com/ja-jp/platform/support/policy/dotnet-core 🚨2024/11/12 EOL
#fukuten © 2023 Yuta Matsumura. https://dotnet.microsoft.com/ja-jp/platform/support/policy/dotnet-core 🚨2024/05/14 EOL
#fukuten .NET 8 GA までの道のり バージョン リリース日 リリースブログ Preview 1
2023/02/21 Announcing .NET 8 Preview 1 Preview 2 2023/03/14 Announcing .NET 8 Preview 2 Preview 3 2023/04/11 Announcing .NET 8 Preview 3 Preview 4 2023/05/16 Announcing .NET 8 Preview 4 Preview 5 2023/06/13 Announcing .NET 8 Preview 5 Preview 6 2023/07/11 Announcing .NET 8 Preview 6 Preview 7 2023/08/08 Announcing .NET 8 Preview 7 RC 1 2023/09/14 Announcing .NET 8 RC1 RC 2 2023/10/10 Announcing .NET 8 RC2 GA 2023/11/xx - © 2023 Yuta Matsumura. https://dotnet.microsoft.com/ja-jp/download/dotnet/8.0 https://github.com/dotnet/core/tree/main/release-notes/8.0 だいたい1ヶ月間隔 最後のリリース候補版
#fukuten アップデート内容はリリースブログで © 2023 Yuta Matsumura.
#fukuten アップデート内容はリリースブログで © 2023 Yuta Matsumura. .NET ASP.NET Core EF
Core MAUI Tools (ex: Visual Studio) Performance Improvements
#fukuten アップデート内容はリリースブログで © 2023 Yuta Matsumura. https://qiita.com/tsubakimoto_s/items/36188f8a7751352037a0
#fukuten C# 12 もリリースされる • プライマリ コンストラクター • コレクション式 •
既定のラムダパラメーター • 任意の型の別名設定 • インライン配列 • インターセプター © 2023 Yuta Matsumura. https://learn.microsoft.com/ja-jp/dotnet/csharp/whats-new/csharp-12
#fukuten #fukuten 従来のコンストラクター © 2023 Yuta Matsumura.
#fukuten #fukuten プライマリコンストラクター © 2023 Yuta Matsumura.
#fukuten #fukuten コレクション式 一次元配列の宣言と初期化 構造体の宣言と初期化 二次元配列の宣言と初期化 変数を使った二次元配列の宣言と初期化 © 2023 Yuta
Matsumura.
#fukuten #fukuten 既定のラムダパラメーター © 2023 Yuta Matsumura.
#fukuten 気になるアップデート .NET 8 © 2023 Yuta Matsumura.
#fukuten 💡.NET 8 updates • Native AOT (Reduced memory footprint,
Improved startup time, Improved battery life) • non-root コンテナーイメージ • コンテナーのマルチプラットフォームビルド (ex: dotnet build … --platform linux/amd64) • TimeProvider クラスの導入 (DateTime/DateTimeOffset/TimeSpan のモックが容易になる) • IMeterFactory / .AddMetrics() • IHostedLifecycleService の拡張 (Graceful shutdown がより制御しやすくなる) • .NET SDK のライブラリ類のドキュメントの充実 © 2023 Yuta Matsumura. Pre 1 Pre 1 Pre 3 Pre 4 Pre 5 Pre 7 RC 2
#fukuten Native AOT • AOT: Ahead of Time → 事前コンパイラ
• ビルド時にネイティブコードにコンパイルされる (実行時の JIT コンパイルは行われない) • C++ のコンパイラ環境が必要 • 利点 • 実行形式ファイルのサイズ削減 • 起動時間の短縮 • 必要メモリの削減 © 2023 Yuta Matsumura. https://learn.microsoft.com/ja-jp/aspnet/core/fundamentals/native-aot?view=aspnetcore-8.0 https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/
#fukuten #fukuten Native AOT: csproj の構成 © 2023 Yuta Matsumura.
dotnet publish -r win-x64 -c Release
#fukuten 実行形式ファイルのサイズ削減 © 2023 Yuta Matsumura. 非AOT AOT dotnet publish
-r win-x64 -c Release -p:PublishSingleFile=true --self-contained true dotnet publish -r win-x64 -c Release
#fukuten 気になるアップデート ASP.NET Core 8 © 2023 Yuta Matsumura.
#fukuten 💡ASP.NET Core 8 updates • Blazor テンプレートの更新 (旧 Blazor
United … Server も WebAssembly もひとまとめ) • Native AOT のサポート (Razor, Minimal API, gRPC, Libraries) • コンテナーのマルチプラットフォームビルド (ex: dotnet build … --platform linux/amd64) • Web API プロジェクトに .http ファイルが同梱 • デバッグエクスペリエンスの向上 • Minimal API のフォームバインディングのサポート • Minimal API や Blazor の偽装防止 (Antiforgery) の統合 • Visual Studio の SPA テンプレートの拡充 (Angular, React, Vue) © 2023 Yuta Matsumura. Pre 1 Pre 3 Pre 3 Pre 4 Pre 5 Pre 5 Pre 7 Pre 6
#fukuten Minimal API の Native AOT © 2023 Yuta Matsumura.
非AOT AOT dotnet publish -r win-x64 -c Release -p:PublishSingleFile=true --self-contained true dotnet publish -r win-x64 -c Release
#fukuten 気になるアップデート Entity Framework Core 8 © 2023 Yuta Matsumura.
#fukuten 💡Entity Framework Core 8 updates • マップされていない型の生 SQL クエリ
• SQL Server での DateOnly/TimeOnly のサポート • 複合型を使用した値オブジェクト • Contains 演算子 (LINQ) の SQL 変換の改善 サンプルコード集 https://github.com/dotnet/EntityFramework.Docs/tree/main/samples © 2023 Yuta Matsumura. Pre 1 Pre 1 RC 2 Pre 1
#fukuten #fukuten Contains 演算子 (LINQ) の SQL 変換の改善 © 2023
Yuta Matsumura. パフォーマンス向上
#fukuten Visual Studio & Visual Studio Code © 2023 Yuta
Matsumura.
#fukuten Visual Studio 2022 17.8 • プルリクエストや Diff の改善 •
Visual Studio の SPA テンプレートの拡充 (Angular, React, Vue) • .http ファイルの環境ファイル (http-client.env.json) © 2023 Yuta Matsumura.
#fukuten プルリクエストや Diff の改善 © 2023 Yuta Matsumura.
#fukuten SPA テンプレートの拡充 © 2023 Yuta Matsumura.
#fukuten .http ファイルの環境ファイル © 2023 Yuta Matsumura.
#fukuten Visual Studio Code • C# Dev Kit • VS
Code で C# 開発を行うための新たな開発環境 • ローカル: VS サブスクリプション必須 • GitHub Codespaces: VS サブスクリプション不要 © 2023 Yuta Matsumura. https://learn.microsoft.com/ja-jp/visualstudio/subscriptions/vs-c-sharp-dev-kit https://devblogs.microsoft.com/visualstudio/announcing-csharp-dev-kit-for-visual-studio-code/ https://blog.shibayan.jp/entry/20230825/1692937805
#fukuten Visual Studio Code: C# Dev Kit • ソリューションファイルの構成を表示 •
Visual Studioっぽい © 2023 Yuta Matsumura.
#fukuten ご清聴ありがとうございました © 2023 Yuta Matsumura.