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
600
.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
re:Invent の裏でアップデートされていた .NET Aspire で統合するAWS のクラウドリソース
tsubakimoto_s
1
54
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
260
Microsoft Entra External IDとAzure AD B2C
tsubakimoto_s
0
970
Minimal Observability on Minimal API
tsubakimoto_s
0
87
ワークフローのコピペを自作で解消した話
tsubakimoto_s
0
62
Azure AI ことはじめ
tsubakimoto_s
0
610
Azureのコアサーバーレス Azure Functions
tsubakimoto_s
0
610
米国カンファレンスで活躍したAzure AI Speech
tsubakimoto_s
0
740
GitHub Codespaces Updates
tsubakimoto_s
0
510
Other Decks in Technology
See All in Technology
テストって楽しい!開発を加速させるテストの魅力 / Testing is Fun! The Fascinating of Testing to Accelerate Development
aiandrox
0
170
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
920
AI駆動で進化する開発プロセス ~クラスメソッドでの実践と成功事例~ / aidd-in-classmethod
tomoki10
1
1.1k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
5.5k
Google Cloud Next 2025 Recap 生成AIモデルとマーケティングでのコンテンツ生成 / Generative AI models and content creation in marketing
kyou3
0
120
250510 StepFunctionのテスト自動化始めました vol.1
east_takumi
1
210
newmo の創業を支える Software Architecture と Platform Engineering
110y
4
440
kernelvm-brain-net
raspython3
0
520
Cursorをチョッパヤインタビューライターにチューニングする方法 / how to tuning cursor for interview write
shuzon
2
150
Part2 GitHub Copilotってなんだろう
tomokusaba
2
760
問 1:以下のコンパイラを証明せよ(予告編) #kernelvm / Kernel VM Study Kansai 11th
ytaka23
3
490
LINE 購物幕後推手
line_developers_tw
PRO
0
430
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.7k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Navigating Team Friction
lara
185
15k
A Tale of Four Properties
chriscoyier
159
23k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Designing Experiences People Love
moore
142
24k
Into the Great Unknown - MozCon
thekraken
38
1.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
GitHub's CSS Performance
jonrohan
1031
460k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
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.