InfoQ ホームページ .NET に関するすべてのコンテンツ
-
C# 9: Swicth文の範囲演算子とパターンマッチング式
C#が初めて紹介された頃から、開発者たちは、この言語のswitch構造に範囲演算子(range operator)のないことに不満を唱えていた。このためにC#のswitchは、VBよりもはるかに使い勝手が悪かったのだ。C# 9では、パターンマッチング拡張の一部として、この制限への対処が行われている。
-
C# 9: パターンマッチングの新キーワード `and`、`or`、`not`
エイプリルフールのジョークのように聞こえるかも知れないが、C# 9では"and"、"or"、"not"がキーワードに加わる予定である。具体的には、パターンマッチングで使用するためだ。
-
MSMQと.NET Core
Microsoft Message Queuing (MSMQ) は現在、.NET Coreでは使用できない。一般的には他のメッセージキューシステムが好まれているが、エンタープライズアプリケーションの多くがMSMQをベースとしているため、.NET Frameworkから.NET Coreや次期バージョンである.NET 5への移行を考えているチームにとっては問題である。しかし先日のReference Sourceへのプルリクエストが、状況を変えてくれるかも知れない。
-
C#の新機能: nullチェック演算子
6月24日のC# Language Design Meetingで、Microsoftは、パラメータnullチェック構文の一部を変更した。"Type parameterName!"から"Type parameterName!!"に変更して、実質的に新しい"nullチェック演算子"を導入したのだ。
-
MicrosoftがgRPC-Web for .NETをリリース
Microsoftは先週、.NET用gRPC-Webプロトコルの実用レベルの実装をリリースした。元々は試験的機能というサポートだったが、今回、コンポーネントがgrpc-dotnetプロジェクトの一部となったのだ。新しいコンポーネントにより、ブラウザ内でgRPCを使用できるようになるので、HTTPサーバをプロキシとして使用しなくても、Webアプリケーションが直接gRRCサーバと通信可能になる。
-
C# 9: newキーワードの型推論
多くの場合において、特定の場所で使用可能な型はただひとつのはずだ。しかしC#では、依然として型を明示的に指定する必要がある。今回、ターゲット型(Target-typed)'new'式の提案がC# 9で採用されたことにより、このようなボイラープレートコードは不要になる。
-
MAUI: .NETのマルチプラットフォーム用アプリケーションUI
先月のBuild 2020開催期間中、Microsoftは、デバイスネイティブなアプリケーションを開発するためのマルチプラットフォームフレームワークである.NET MAUIのロードマップを発表した。新フレームワークはXamarin.Formsの進化形に相当し、Android、iOS、macOS、Windows用のネイティブ機能を提供する。
-
C# 9: シンプルになったパラメータnullバリデーション
シンプルになったパラメータnullバリデーションがC# 9の機能として取り入れられることになった。最小化されたこの機能では、非nullパラメータの検証に必要なコードが、関数シグネチャ内の1文字にまで削減されている。
-
C# 9 - ソースジェネレータのためのパーシャルメソッド拡張
C# 9のソースジェネレータ(Source Generator)は、コンパイル時にコードを調査して追加的にソースコードを挿入するようなコンパイラ拡張を可能にする。挿入されたコードは、コンパイルされたものとまったく同じアセンブリに組み込まれる。この機能を活用するためにMicrosoftは、パーシャルメソッドの制限の大部分を撤廃することにしている。
-
C# 9でコンパイル時メタプログラミングを実現するソースジェネレータ
ソースジェネレータ(Source Generator)は、コンパイラが生成したメタデータを使ってユーザコードを調査し、新たなコードを追加的に生成して、プログラムの他の部分と一緒にコンパイルするという動作を可能にする、C#コンパイラの新機能である。
-
Microsoft Build 2020のハイライト
Microsoftは先週、第10回のBuildを開催した。BuildはMicrosoftのテクノロジを使用する開発者を対象に、年次で開催されるカンファレンスである。このオンラインイベントでは、Blazor WebAssemblyの一般向け提供開始、間もなくリリースされる.NET 5の最新情報、Azure Static Web Apps、IoTや人工知能に関する新プロジェクトなど、重要な発表やリリースが目白押しだった。
-
C# 9ではスクリプティングをファーストクラスサポートへ
"スクリプティング"言語を定義する特徴のひとつは、ボイラープレートを必要としないことだ。ファイルの最初の行から、通常は関数の中にある宣言やステートメントを記述することができる。更新されたトップレベルステートメントの提案では、この機能がC# 9に計画されている。
-
Stack Overflowがアーキテクチャを.NET Frameworkから.NET Coreに移行
Stack Overflowは先頃、.NET Frameworkから.NET Coreへのシステムアーキテクチャ移行を完了した。このプラットフォームはStack Overflowだけではなく、170を越えるQ&Aコミュニティ、さらには企業のプライベートQ&Aサイトも支えている。
-
MicrosoftがBlazor WebAssembly 3.2.0 RCをリリース
今週初め、MicrosoftはBlazor WebAssembly 3.2 RCをリリースした。これはBlazor WebAssemblyで計画されている最後のプレビューリリースであるため、公式リリースで期待されているすべての機能が含まれている。実用版のリリースは5月の予定である。
-
Microsoft .NET Conf: Focus開催、テーマはXamarin
先週、第2回の.NET Conf:Focusが開催された。今回の中心はXamarinだ。Xamarinは、モバイルアプリ開発を特に対象としたツールやライブラリによって、.NETプラットフォームを拡張する。Focusカンファレンスは無料で参加可能な丸一日のライブストリームイベントで、コミュニティや.NETプロダクトチームから講演者が登壇する。第1回は今年1月、Blazorをテーマに実施された。