75
73

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

.NET Framework の新機能を超簡単に説明する

Last updated at Posted at 2016-11-06

以前「.NET Frameworkのバージョン対応表」という記事を書いたのですが、「新機能」に書かれているものがどんなものなのか分かりづらかったので超簡単にまとめてみました。

本当に超簡単な説明しかありませんので、詳細を知りたい方はリンク先を参照してください。

.NET Framework バージョン対応表

.NET Framework Visual Studio C# 新機能
1.0 2002 1.0 -
1.1 2003 1.2 ODBCとOracle Database用のデータ接続
IPv6
2.0 2005 2.0 64ビットシステム
.NET Micro Framework
[C#]ジェネリック
[C#]イテレータ
3.0 2005 2.0 WPF・WCF・WF・WCS
3.5 2008, 2010 3.0 ASP.NET MVC
ASP.NET AJAX
[C#]LINQ
[C#]ラムダ式
[C#]暗黙的型付け(var)
4 2012 4.0 F#言語
Dynamic Language Runtime
MEF
Velocity
Windows タッチ
ADO.NET Entity Framework
[C#]Parallel Extensions(Parallel/PLINQ)
[C#]dynamic型
[C#]オプション引数/名前付き引数
4.5 2013 5.0 Windowsストアアプリ
[C#]非同期プログラミング(async/await)
[C#]Caller Info
4.6 2015 6.0 RyuJIT
.NET Native
.NET Compiler Platform
4.7 2017 7.0 Windows Formsの高DPI
WPFのタッチ
拡張された暗号
[C#]タプル
[C#]パターンマッチング
4.8 2019 7.3 JITとNGENの強化
ZLibのセキュリティ強化
Windows Formsのアクセシビリティ強化
WCPのService Behavior強化
WPFの高DPI強化
Core 1.0 2015 Update 3 6.0 ASP.NET Core
オープンソース化
Mac/Linux/iOS/Android対応
Core 1.1 2015 Update 3, 2017 6.0 1380個のAPI追加
Core 2.0 2017 15.5 7.1 .NET Standard 2.0対応
ASP.NET Core 2.0
Entity Framework Core 2.0
ML.NET
Core 2.1 2017 15.8.6 7.2 ASP.NET Core 2.1
Entity Framework Core 2.1
.NET Core グローバルツール
HttpClient のパフォーマンス改善
Windows互換機能パック
[C#]Span<T>, Memory<T>
Core 2.2 2017 15.9 7.3 ASP.NET Core 2.2
Entity Framework Core 2.2
Core 3.0 2017 16.0, 2019 8.0 .NET Standard 2.1対応
WPF・Windows Forms
[C#]Null 許容参照型
[C#]Interfaceのデフォルト実装
[C#]非同期ストリーム
[C#]Range型, Index型
Core 3.1 2019 16.4 8.0 C++/CLI対応
ASP.NET Core 3.1
Entity Framework Core 3.1
5 2019 16.8 9.0 「.NET Framework」と「.NET Core」を統合
ASP.NET Core 5.0
Entity Framework Core 5.0
6 2022 17.0 10.0 Arm64対応
ホット リロード
.NET MAUI
7 2022 17.4 11.0 ネイティブ AOT
HTTP/3
[C#]生文字列リテラル
8 2022 17.8 12.0 Blazor United
[C#]コレクション式
[C#]プライマリ コンストラクター

.NET Framework 1.1 の新機能

ODBCとOracle Database用のデータ接続

標準的なリレーショナルデータベース接続に対応。

IPv6

OSI 参照モデルにおいてネットワーク層に位置付けられるプロトコルです。
IPv4 よりも多くの IP アドレスを使用することができます。

.NET Framework 2.0 の新機能

64ビットシステム

現在の主流となっている 64 ビット版の Windows に対応。

.NET Micro Framework

小型組み込み機器向けに開発された .NET Framework です。
バージョン4.0からはオープンソース化され、GitHub で公開されています。

[C# 2.0]ジェネリック

型をパラメータとして与え、その型に対応したクラスやメソッドを生成する機能です。

[C# 2.0]イテレータ

イテレータまたは反復子と呼ばれ、配列やコレクションにおいて次の要素へアクセスする機能です。

.NET Framework 3.0 の新機能

WPF(Windows Presentation Foundation)

「Windows Forms」に代わる新しい UI サブシステムです。
ビュー部分は C# や VisualBasic ではなく XAML(ザムル) と呼ばれるマークアップ言語で記述します。

現在では、さらに新しい UI サブシステムである UWP(Universal Windows Platform) が登場しています。

WCF(Windows Communication Foundation)

Webサービス、.NET Remoting、Distributed Transactions、メッセージキュー(MSMQ) を統合した新しい通信サブシステムです。

WF(Windows Workflow Foundation)

ワークフローを定義・実行・管理するための技術です。

WCS(Windows CardSpace)

ID管理するための技術です。

.NET Framework 3.5 の新機能

ASP.NET MVC

「ASP.NET Webフォーム」に代わる新しい Web アプリケーションを開発するためのフレームワークです。

ASP.NET AJAX

Web アプリケーション上で AJAX(Asynchronous JavaScript + XML) を利用するための機能です。

[C# 3.0]LINQ(Language Integrated Query)

リレーショナルデータベース、XML、コレクションなどの様々なデータソースに対して、共通の文法で問い合わせが可能な機能です。

[C# 3.0]ラムダ式

メソッド定義を式として扱える機能です。

[C# 3.0]暗黙的型付け(var)

型推論による暗黙的型付けする機能です。

.NET Framework 4 の新機能

F#言語

OCaml をベースに開発された関数型とオブジェクト指向のマルチパラダイム言語です。

Dynamic Language Runtime

Ruby や Python などの動的言語を .NET Framework 上に実装可能です。

MEF(Managed Extensibility Framework)

拡張可能なアプリケーションを開発するためのフレームワークです。

Velocity

分散キャッシュAPIです。

Windows タッチ

タッチパネル操作を利用したアプリケーションを開発できます。

ADO.NET Entity Framework

オブジェクト指向プログラミングとリレーショナルデータベースを利用したアプリケーションを開発するためのフレームワークです。

[C# 4.0]Parallel Extensions(Parallel/PLINQ)

並列プログラミング機能を簡単に記述できるプログラミング機能です。

[C# 4.0]dynamic型

実行時に変数の型を決定する機能です。

[C# 4.0]オプション引数/名前付き引数

メソッドの引数にデフォルト値を指定したり、名前を付けることができる機能です。

.NET Framework 4.5 の新機能

Windowsストアアプリ

Windowsストアで配信可能なアプリを開発することができます。

[C# 5.0]非同期プログラミング(async/await)

非同期プログラミングを簡単に記述できるプログラミング機能です。

[C# 5.0]Caller Info

C++ でいうところの「__FILE__」「__LINE__」マクロのような呼び出し元情報を取得するためのプログラミング機能です。

.NET Framework 4.6 の新機能

RyuJIT

新しい JIT コンパイラです。
コンパイル時間が短縮され、パフォーマンスが向上しています。

.NET Native

.NET言語で開発されたプログラムをネイティブ化することができます。

.NET Compiler Platform

.NETコンパイラープラットフォームです。
開発コードネームは「Roslyn(ロズリン)」と呼ばれていました。

.NET Framework 4.7 の新機能

Windows Formsの高DPI、WPFのタッチ、拡張された暗号などがサポートされました。

[C# 7.0]タプル

タプルは複数のオブジェクトを一つのオブジェクトにまとめることができる構文です。
これによりメソッドが多値戻り値を返すことができるようになりました。

[C# 7.0]パターンマッチング

is 演算子と switch 文が拡張され、型による分岐と分解ができるようになりました。

.NET Framework 4.8 の新機能

JITとNGEN、ZLibのセキュリティ、Windows Formsのアクセシビリティ、WCPのService Behavior、WPFの高DPIなどが強化されました。

.NET Framework Core 1.0 の新機能

ASP.NET Core

Web アプリケーションを開発するための新しいフレームワークです。
開発コードネームは「ASP.NET MVC 5」と呼ばれていました。

オープンソース化

「.NET Core」「ASP.NET Core」「.NET Compiler Platform」「Visual Studio Code」「PowerShell」などがオープンソース化され、GitHub で公開されています。

Mac/Linux/iOS/Android対応

これまで Windows 以外の環境で .NET アプリケーションを動作させるには互換環境である「Mono」を利用するのが一般的でした。
「.NET Core」では正式に Mac、Linux、iOS、Android に対応しています。

.NET Framework Core 1.1 の新機能

新たに 1380 個の API が追加されました。
.NET Framework Core 1.1 では .NET Standard 1.6 がサポートされています。

.NET Framework Core 2.0 の新機能

.NET Standard 2.0対応

.NET Standard 2.0 がサポートされ、大幅に API が追加されます。

.NET Core 2.0

ASP.NET Core 2.0

ML.NET

.NET Framework Core 2.1 の新機能

.NET Core 2.1

ASP.NET Core 2.1

Entity Framework Core 2.1

.NET Core グローバルツール

npm global tools にインスパイアされた新しい開発ツールが追加されます。

HttpClient のパフォーマンス改善

HttpClient のパフォーマンスが 2 〜 10 倍ほど改善されます。

Windows互換機能パック

System.Drawing、EventLog、Windowsサービスなどの API が追加されます。

[C# 7.2]Span<T>, Memory<T>

C# 7.2 で使用可能になった、連続したデータを扱うための型が使えるようになります。

.NET Framework Core 2.2 の新機能

.NET Core 2.2

ASP.NET Core 2.2

Entity Framework Core 2.2

.NET Framework Core 3.0 の新機能

.NET Standard 2.1対応

WPF・Windows Forms

WPF・Windows Forms を使ったデスクトップアプリケーションを開発できます。

[C# 8.0]Null 許容参照型

他の言語でいうところの null 安全(null safety) に相当する機能です。

[C# 8.0]Interfaceのデフォルト実装

Java でいうところのデフォルトメソッドに相当する機能です。

インターフェースを「契約」として見たときの問題点 ― C#への「インターフェースのデフォルト実装」の導入(前編)

[C# 8.0]非同期ストリーム

非同期ストリームのための構文「await foreach」とインターフェイス「IAsyncEnumerable」が提供されます。

[C# 8.0]Range型, Index型

範囲とインデックスのための構文「a[^i], a[i..j]」と構造体「Range型, Index型」が提供されます。

.NET Framework Core 3.1 の新機能

C++/CLI対応

C++/CLI を使って .NET Core アプリケーションを開発できるようになります。

ASP.NET Core 3.1

Entity Framework Core 3.1

.NET 5 の新機能

「.NET Framework」と「.NET Core」を統合

「.NET Framework」と「.NET Core」を統合し「.NET」という名称に改められました。
次のバージョン「.NET 6」では「Xamarin」も統合される予定です。

ASP.NET Core 5.0

Entity Framework Core 5.0

.NET 6 の新機能

Arm64対応

Windows Arm64、macOS Arm64 に対応します。

ホット リロード

ホット リロード は、アプリのソース コードを変更し、それらの変更を実行中のアプリに即座に適用することができる機能です。

.NET MAUI

以前は Xamarin.Forms と呼ばれていました。
.NET マルチプラットフォーム アプリ UI (.NET MAUI) は、C# と XAML を使用してネイティブ モバイル アプリとデスクトップ アプリを作成するためのクロスプラットフォーム フレームワークです。

.NET 7 の新機能

ネイティブ AOT に対応します。

HTTP/3 に対応します。

[C# 11.0]生文字列リテラル

3 つ以上の連続した " で文字列を囲むとエスケープ文字を使わずに複数行の文字列を定義できるようになります。

.NET 8 の新機能

Blazor United

[C# 12.0]コレクション式

[C# 12.0]プライマリ コンストラクター

75
73
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
75
73

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?