InfoQ ホームページ CSharp-8 に関するすべてのコンテンツ
-
MicrosoftがC# 8.0をリリース
Microsoftは先週、.NET Core3.0リリースの一部としてC# 8.0を一般公開することを、.NET Conf 2019と同社の開発ブログで同時に発表した。言語機能には新たに、null許容参照型、非同期ストリーム、デフォルトインターフェースメンバ、新しいコードパターンなどが含まれている。これらの新機能はすべて、Visual Studio 2019でサポートされる。
-
Microsoft .NET Conf 2019 - .NET Core 3.0、C# 8.0、F# 4.7、マシンラーニング
今週始めにオンラインストリーミングされた.NET Conf 2019 Editionでは、.NETエコシステムの新機能がいくつか発表されている。.NET Core、ASP.NET、EF Core 3.0、さらにC# 8.0とF# 4.7もリリースされた。これら新リリースは、Windowsデスクトップ、Web、モバイルアプリケーションの開発方法に大きな影響を与えるものだ。Visual Studio 2019の新機能とツールも紹介されている。
-
C# 8でのnull許容型の拡張
.NET 2で初めて導入されたNullableは、過去10年半にわたってほとんど変更されなかったが、間もなく変更されるようだ。C# 8では、null許容の参照型をサポートする操作の多くが、null許容の値型にも適用できるようになる。
-
-
-
C# 8 Null許容参照型のアップデート
C# 8のNull許容参照型(nullable refence types)の作業は継続されており、最終リリース前に対処する必要があるエッジケースと、開発者が書く必要がある定型コードを削減する新しい機会を明らかにしている。
-
C# 8パターンマッチングの機能強化
C# 7はパターンマッチングの基礎を築いたが、多くの機能をCutting Room Floorに置いたままにせざるを得なかった。C# 8で追加の時間をかけて、これらのうちの多くが採用されている。
-
C#のデフォルトインターフェイスメソッドの更新
Default Interface Methodsのサポートが完了に近づくにつれて、潜在的な問題が発生します。 多くのことが達成されているが、これは複雑な機能であり、細部の多くはまだ解決されていない。
-
IAsyncDisposableとIAsyncEnumeratorの更新
InfoQが非同期ストリーム提案をカバーしてから、いくつかのデザインに変更があった。もっとも注意すべきなのが軽量のValueTaskオブジェクトを使うことだ。
-
C# 8:ジェネリック属性
属性は初期から.NETの一部であった。そういうものとして、ジェネリクスが導入される前に始まり、全く触れられることはなかった。CLRによってサポートされているが、この提案まではC#はジェネリック属性を使用する機能を提供していなかった。
-
C# 8:アサーションと自動テストのためのCaller Expression Attribute
現在C#は、ファイル名/パス、行番号、呼び出し元のメソッドまたはプロパティの名前について、呼び出し元情報属性をサポ���トしている。Caller Expression Attributeの提案で、式がそのリストに追加される。
-
C# 8:新しいキーワードの型推論
多くの状況では、特定の場所で許可されるタイプは1つだけである。それでもC#では、型を明示的に表記する必要がある。もしターゲット型が定まっている「new」式の提案が採用されれば、そのような定型コードは必要なくなるであろう。
-
.NET Core 3.0の概観:C# 8、WPF、Windows Formなど
.NET Coreの次期メジャーバージョンが最近プレビューステージに入った。.NET Core 3.0では、Windows Presentation Foundation(WPF)、Windows Forms(WinForm)、Entity Framework(EF)、ASP.NET Core 3.0、C# 8、.NET Standard 2.1を使用したデスクトップアプリケーションの構築がサポートされる。
-
C# と F# のデフォルトインターフェイスメソッドにおけるアップデート
議論が盛り上がっているデフォルトインターフェイスメソッド機能はF#でも検討されている。しかしこの機能は .NET Core に限定される可能性があり、提案全体は危機に瀕している。
-
C# 8の小さな機能
デフォルトインターフェイスメソッドとnull許容参照のような大きなチケットアイテムに注意されがちだが、C# 8では小さな機能も検討されている。このサンプルはC#の将来バージョンになる可能性もある。