Page4■C#/VB言語の新機能ここでは、C#とVBに共通する主なものだけを取り上げる。ちなみに、以下のほかには、VBでのみ追加された新機能などがある。具体的には、C#ではすでに実装されている「Yield文」などだ。)C#&VB言語には、async/awaitキーワードが追加され、簡単かつ直感的に非同期処理のコードを記述できるようになった。11.0新機能『async/await非同期メソッド』入門」を一読してほしい。Information)C#&VB言語では、メソッドに対する呼び出し元の、ソース・ファイルのパス(CallerFilePath属性)や、そのファイル内の行番号(CallerLineNumber属性)、メンバ名(CallerMemberName属性)などの呼び出し元情報を取得できるようになった。次のコードは、呼び出し元情報を取得するコンソール・アプリケーションのサンプルだ。args){TraceMessage("トレース情報を書く。Main()TraceMessage("トレース情報を書く。Module呼び出し元情報を取得するコンソール・アプリケーションのサンプル・コード(上:C#、下:VB)これを実行すると、次のようになる。4.5の新機能についても、特に知っておいてほしいものだけを取り上げる。4.5では、ファイル入出力を非同期処理するためのAPIが追加されている。具体的には、Streamクラス(System.IO名前空間)にReadAsync/WriteAsync/CopyToAsync/FlushAsync/ReadLineAsync/ReadToEndAsyncメソッドが追加されており、Streamクラスから派生したFileStreamクラス(System.IO名前空間)やMemoryStreamクラス(System.IO名前空間)でもこれらのメソッドが利用できる。これらのメソッドを活用することで、ファイルの読み込み中にアプリケーションがフリーズしてしまうのを、簡単に避けられるようになる。APIを呼び出すときなどに使える、今風のHTTPクライアント機能を提供するSystem.Net.Http名前空間が追加された。それに付随するHTTPヘッダ関連を取り扱うSystem.Net.Http.Headers名前空間も追加されている。4.0以前のWebClientクラス(System.Net名前空間)に近い機能を提供する。APIでは、HTTPリクエストでGET/POST/PUT/DELETEなどのメソッドを使い分けるが、そのようなクライアントを実装する場合は、WebClientクラスなどの従来のものよりも新しいHttpClientクラスの方が便利だ。HttpClientクラスは、全てのリクエストが非同期メソッドとなっており、「開発者に非同期処理の実装を強制できる」というメリットもある。2012の新機能を画像を多用して簡単に紹介した。全てを紹介できたわけではない。Management)関連など、大幅に省いているものがいくつかある。新機能」という資料を参照するとよいだろう。7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。TranslatorはPowerPoint用のアドイン。