1 ポイント 投稿者 GN⁺ 2023-11-15 | 5件のコメント | WhatsAppで共有
  • .NET 8 は、パフォーマンス、安定性、セキュリティの向上に加え、開発者の生産性とイノベーションのスピードを高めるプラットフォームおよびツールの改善を提供する
  • クラウドネイティブアプリケーションや大規模トラフィックサービスの構築方法を再定義し、Linux や Windows へのデプロイ、あるいはコンテナ利用時でもアプリ構築を容易にする
  • .NET 8 は、Microsoft の大規模サービスで使用されている実証済みライブラリ群を含み、可観測性、レジリエンス、スケーラビリティ、管理容易性などの基本的な課題の解決を支援する

.NET 8 の優れたパフォーマンス

  • .NET 8 にはスタック全体にわたる数千件のパフォーマンス改善が含まれており、デフォルトで有効な新しいコードジェネレーター Dynamic PGO により、アプリの性能を最大 20% 向上できる。
  • AVX-512 命令セットのサポートにより、512 ビットベクターデータに対する並列演算が可能となり、より多くのデータをより高速に処理できる。
  • 基本型は新しい書式設定および解析インターフェースを実装し、UTF-8 で直接書式化と解析を行えるため、変換オーバーヘッドなしで処理できる。

.NET Aspire

  • .NET Aspire は、.NET を用いてレジリエントで可観測性が高く、構成可能なクラウドネイティブアプリケーションを構築するためのスタックであり、標準でテレメトリ、レジリエンス、構成、ヘルスチェックを含む。
  • クラウドネイティブアプリケーションに不可欠な依存関係の検出、取得、構成を容易にし、.NET Aspire の最初のプレビューが本日提供される。

.NET 8 コンテナの強化

  • .NET を使ってコンテナをより簡単かつ安全にパッケージ化でき、すべての .NET イメージには非 root ユーザーが含まれているため、1 行の設定でより安全なコンテナを実現できる。
  • .NET SDK ツールは Dockerfile なしでコンテナイメージを公開し、デフォルトで非 root となっている。
  • より小さな .NET ベースイメージにより、コンテナ化されたアプリをより高速にデプロイでき、新しい Chiseled Ubuntu イメージ派生版によってセキュリティ強化を選択できる。

ネイティブ AoT

  • .NET アプリをネイティブコードにコンパイルすることで、メモリ使用量を削減し、即時起動を実現できる。
  • JIT コンパイラーが実行時にコードをコンパイルする必要がなく、JIT コンパイラーと IL コードを配布する必要もない。
  • AOT アプリはアプリに必要なコードだけを配布するため、制約の多い環境でも実行できる。

人工知能

  • .NET 8 は AI 機能を簡単に活用できるよう、.NET SDK にファーストクラスの AI 機能を提供し、さまざまなツールとのシームレスな統合を支援する。
  • System.Numerics ライブラリに複数の改善を導入して Generative AI ワークロードとの互換性を高め、AI 対応アプリの台頭により新しいツールや SDK も登場している。
  • さまざまな社内外のパートナーと協力し、.NET 開発者が多様な AI モデル、サービス、プラットフォームへ簡単にアクセスできるよう支援する。

Blazor

  • .NET 8 の Blazor は、サーバーとクライアントを組み合わせて、あらゆる Web UI 要件に対応できる。
  • ページ読み込み時間、スケーラビリティ、ユーザー体験を最適化する複数の新しい改善により、開発者は Blazor Server と Blazor WebAssembly を同じアプリ内で利用できる。

.NET MAUI

  • .NET MAUI は、単一のプロジェクトシステムと単一のコードベースを提供し、WinUI、Mac Catalyst、iOS、Android アプリケーションを構築できる。
  • 新しい Visual Studio Code 拡張機能により、.NET モバイルおよびデスクトップアプリを開発するためのツールが提供され、Xcode 15 と Android API 34 をサポートすることで、最新バージョンの iOS と Android を対象にできる。

C# 12 機能

  • C# 12 はコーディング体験をより生産的で楽しいものにし、シンプルで洗練された構文を用いてクラスや構造体にプライマリコンストラクターを作成できる。
  • 配列、スパン、その他のコレクション型を、簡潔で表現力のある構文で簡単に作成できる。

GN⁺の見解

この記事で最も重要なのは、.NET 8 が開発者に提供する多様な新機能と改善点である。パフォーマンス向上、クラウドネイティブアプリケーション開発の容易化、AI 統合の強化、Blazor および .NET MAUI の進化などは、開発者がより効率的で革新的なソフトウェアを作れるよう支援するだろう。これらの機能は、技術の最前線で働く開発者にとって興味深く魅力的なアップデートであり、現在および将来のプロジェクトに適用できる新たな可能性を切り開く。

5件のコメント

 
cosine20 2023-11-21

「あるフルスタック.NET開発者は、採用市場で.NET関連のポジションが少なく、あっても『ロックスター』級のレベルを求められることが多いとして、失望感を表した。」
海外もそれほど変わらないようですね…。私は.NETとC#が好きなほうですが、こちらの分野でキャリアを積みたくても、ポジション自体があまりないか、求められるレベルが高すぎます。しくしく

 
leetleet 2023-11-17

個人的には、.NETは生産性とパフォーマンスの両方を実現できると思うので使いたいのですが…
国内市場では人材の問題で、使うには少し厳しいですね…

 
kuroneko 2023-11-17

おお…見てみると、Native AoT は .NET 7 と比べて対応プラットフォームがものすごく増えましたね。
完全にネイティブコードへコンパイルされるそうで、もう自分が知っていた .NET ではないですね。 +_+

それにしても、もうバージョン 8…? .NET に名前が変わってからもまだそれほど経っていない気がするのに…

 
cosine20 2023-11-21

.NET のバージョンがかなり早いペースで上がっていきますね。サポート期間もそのぶん少し短めなのが難点です ;_; LTS も3年ほどです。

 
GN⁺ 2023-11-15
Hacker Newsの意見
  • .NETに関する印象的な体験

    あるユーザーは、古くて独自仕様の動画フォーマットを扱う作業を通じて、.NETに深い感銘を受けた。このフォーマットにはGPS、動画、音声などが含まれており、ファイルサイズも非常に大きく、理解が難しかったという。ユーザーは独自の古いプレーヤーアプリケーションを見つけてC#にデコンパイルし、プレーヤー部分を取り除いて、MP4やその他の部分を抽出できるコードを残した。このコードを.NET 4でコンソールアプリケーションとしてビルドした後、Linuxでコンパイルして実行できるようにアップグレードすることに成功した。何千行ものコードを解析する複雑な作業だったにもかかわらず、この過程は非常に簡単で、10年以上前のコードを1日でLinux上で動かせたという。

  • .NETの発展と組織内での変化

    .NETは初期のイメージのせいで過小評価されていたが、最近では非常に楽しく作業できる環境へと変貌した。ツールや使い勝手の改善により、ある組織ではGoを置き換えるために.NET Core 3.1からGoへ移行した後、最近になって再び.NET 6へ戻った。

  • .NET 8のDynamicPGO機能

    .NET 8ではDynamicPGOがデフォルトで有効になっており、これは以前のバージョンである6と7から改善されている。この機能は、インターフェイス/仮想呼び出しのガード付きデバーチャライゼーション、デリゲートのインライン化、分岐の再配置を通じて、抽象化の多いコードベースに大きく役立つ。

  • .NETとMonoの関係についての質問

    あるユーザーは、.NETとMonoの関係について説明を求めている。Monoが完全に時代遅れになったのか、それとも.NETに統合されたのかが気になっているという。また、.NETという名称や、アセンブリがネイティブコードなのかバイトコードなのかについても混乱を示している。

  • .NETのクロスプラットフォームUIの問題

    .NETのクロスプラットフォームUIは分かりづらく、特にMVCの実装が明確でない点に不満を示している。シンプルで直感的なデスクトップGUIがあってほしいという願いも述べている。

  • .NET開発者の採用市場に対する失望

    あるフルスタック.NET開発者は、採用市場で.NET関連のポジションが少なく、あっても「ロックスター」級の人材を求めることが多いとして失望感を表している。

  • Blazorの発展と期待

    Blazorはサーバーサイドのストリーミングとレンダリング、コンポーネントレベルのインタラクションを提供しており、魅力的に見える。.NETがWasmGC機能と統合されれば、さらに改善されるだろうと期待している。

  • .NETエコシステムの長所についての意見募集

    .NETファンに対して、他のエコシステムではなく.NETを使うべき理由を聞いてみたいとしている。

  • .NET Conf - Day 1 動画リンク

    .NET Conf初日の動画リンクを共有している。

  • C# 12の新機能と「Aspire」発表に対する意見

    C# 12の新しい品質向上機能(コレクションリテラル、プライマリコンストラクター)と「Aspire」の発表を興味深いと評価しつつ、これが良い変化なのか、それとも「魔法」が多すぎるのかについては、まだ判断がついていないと述べている。