rksoftware

Visual Studio とか C# とかが好きです

dotnet conf 2023 のめも (途中 v2)

dotnet conf 2023 のめも

ついに待望の dotnet conf 2023 の時期がやってきました。しかし今回のセッション数、かなりの数が予告されています。正直全部は観きれない......。というわけで選択のための自分用メモを作っていきます。

■ ブログ

まずはブログ記事。

Announcing .NET 8 - .NET Blog

  • パフォーマンス向上
  • .NET Aspire の紹介
  • コンテナまわりの強化
  • ネイティブ AOT
  • AI を .NET アプリに組み込む
  • Blazor
  • MAUI
  • C# 12
  • Visual Studio と Visual Studio Code + C# Dev Kit の紹介
  • .NET 8 の追加機能
    • ASP.NET Core について
    • Entity Framework Core について
    • NuGet について
    • .NET ランタイムについて WebAssembly (WASM) と Android に新しい AOT コンパイル モードを導入
    • .NET SDKについて ターミナルのビルド出力と本番環境に対応したデフォルトを復活
    • WPFに ついて OpenFolderDialogとRDP での有効な HW アクセラレーションのサポート
    • ARM64について ARM エンジニアとのコラボレーションにより、ARM64 プラットフォームの機能が大幅に強化され、コード品質が向上
    • Debugging について
    • System.Text.Json について 読み取り専用メンバーの設定、マップされていないメンバーの処理のカスタマイズ、およびネイティブ AOT サポートの改善を支援
    • .NET コミュニティ ツールキットについて トリムおよび AOT との互換性を確保しながら、.NET ライブラリおよびアプリケーションの構築を高速化 (MVVM ソース ジェネレーターを含む)
    • Azure について Windows および Linux 用の App Service、静的 Web アプリ、Azure Functions、Azure Container Apps などの Azure の PaaS サービスで .NET 8 をサポート
    • F# 8 について 言語の大幅な変更、新しい診断、使いやすさの向上、プロジェクトのコンパイルにおけるパフォーマンスの強化、および FSharp.Core 標準ライブラリへのアップグレード

Introducing .NET Aspire: Simplifying Cloud-Native Development with .NET 8 - .NET Blog

これが噂の Aspire。
Aspire の紹介です。Aspire についてプロジェクト テンプレートから作ったアプリについて説明がされています。Aspire が何なのかはいまいち曖昧。
監視やコンテナでのデプロイなど、アプリとして公開するのに必要なものを全部セットにしたテンプレート、を目指しているもの、といった感じでしょうか?

.NET Framework November 2023 Security and Quality Rollup - .NET Blog

.NET Framework の更新の案内です。
セキュリティ関連がいくつかと WPF で 1 件の記述があります。WPF は気になるかもしれませんが、今回このタイミングでは気にしなくていい内容だと思います。

.NET November 2023 Updates – .NET 7.0.14, .NET 6.0.25 - .NET Blog

.NET (not .NET 8) の更新の案内です。
セキュリティ関連でいくつかの更新の記載があります。

Announcing F# 8 - .NET Blog

F# 8!
かなり詳細に新機能について説明と解説がされています。しかし、C# Tokyo コミュニティ的に後回しにせざるを得なく。中身までは追えません......。

Announcing C# 12 - .NET Blog

C# 12!

  • コレクション式
  • プライマリ コンストラクター
  • エイリアス任意のタイプ
  • デフォルトのラムダパラメータ
  • 参照読み取り専用パラメータ
  • インライン配列

実験機能

  • インターセプター

Entity Framework Core 8 (EF8) is available today - .NET Blog

Entity Framework Core のアッピールポイント。

  • 複合型を使用した値オブジェクト
  • プリミティブコレクション
    PostgreSQL を使用している場合は、PostgreSQL の組み込み配列型を使用してこれらを簡単に保存できます
  • JSON列マッピングの強化
  • .NET および EF Core の HierarchyId
    Azure SQL と SQL Server には、階層データをhierarchyid格納するために使用される と呼ばれる特別なデータ型があります
  • マップされていない型に対する生の SQL クエリ

Announcing ASP.NET Core in .NET 8 - .NET Blog

APS.NET Core の .NET 8 でのアッピールポイント。パフォーマンス改善。AOT。結構長い文章量で AOT によるパフォーマンス改善をアッピールしています。
ネイティブの AOT 対応プロジェクト テンプレートというのも .NET 8 にあるとのことです。dotnet new webapiaot コマンドのようですね。MVC はまだネイティブ AOT 互換ではないため、最小限の API のみとのことです。これは注意ですね。

Blazor

  • 静的サーバー側レンダリング
  • 強化されたナビゲーションとフォーム処理
  • ストリーミング レンダリング
  • コンポーネントまたはページごとの対話性を有効にする@rendermode
  • 実行時にレンダリング モードを自動選択
  • データ グリッド コンポーネントである QuickGrid が同梱される。Entity Framework Core を含むさまざまなデータ ソースから厳密に型指定されたデータを読み込むことができる
  • 新しい Blazor Web アプリ テンプレートに便利なオプションが含まれる

ASP.NET Core

  • MVC の汎用属性
  • ID API エンドポイント
  • 最小限の API と偽造防止ミドルウェアのフォーム バインディングの強化
  • SignR ステートフル再接続
  • 依存関係の注入におけるキー付きサービスのサポート
  • キー付きサービスの登録
  • キー付きサービスの使用
  • OpenTelemetry
  • 名前付きパイプのトランスポート
  • Redis ベースの出力キャッシュ
  • ルートツーリング

.NET Aspire と ASP.NET Core を使用してクラウドネイティブ アプリをシームレスに構築

Announcing .NET MAUI in .NET 8 - .NET Blog

MAUI の .NET 8 でのアッピールポイント。バグ修正とパフォーマンス改善しました。
新しい要素は

  • キーボードアクセラレータ
  • ポインタジェスチャの強化
  • ドラッグ アンド ドロップ ジェスチャの機能強化
  • AOT

MAUI のインストールは

dotnet workload install maui