C#各版本新增加功能

張傳寧發表於2019-07-23

  本系列文章主要整理並介紹 C# 各版本的新增功能。

C# 8.0

C#8.0 於 2019年4月 隨 .NET Framework 4.8 與 Visual Studio 2019 一同釋出,但是當前處於預覽狀態。預計在2019年9月正式釋出。

目前提供以下功能可供試用:

  • Readonly 成員
  • 預設介面成員*重要,突破性的變革*請參考:C#8.0 中使用預設介面成員更新介面
  • 模式匹配增強功能:Using 宣告
    • Switch 表示式
    • 屬性模式
    • 元組模式
    • 位置模式
  • 靜態本地函式
  • 可處置的 ref 結構
  • 可為空引用型別
  • 非同步流*重要*
  • 索引和範圍

具體新增功能請檢視 C#8.0 新增功能

C# 7.3

C#7.3 隨 VS2017 v15.7 釋出(2018年5月)。  自 Visual Studio 2017 版本 15.7 和 .NET Core 2.1 SDK 起,開始隨附 C# 7.3。

具體新增功能請檢視 C#7.3 新增功能

C# 7.2

C#7.2 隨 VS2017 v15.5 釋出(2017年11月)。自 Visual Studio 2017 版本 15.5 和 .NET Core 2.0 SDK 起,開始隨附 C# 7.2。

具體新增功能請檢視 C#7.2 新增功能

C# 7.1

C#7.1 隨 VS2017 v15.3 釋出(2017年8月)。  自 Visual Studio 2017 版本 15.3 和 .NET Core 2.0 SDK 起,開始隨附 C# 7.1。

具體新增功能請檢視 C#7.1 新增功能

C# 7.0
C#7.0 於 2017年3月 隨 .NET 4.7 和 VS2017 釋出。

C# 7.0 向 C# 語言新增了許多新功能:具體請檢視 C#7.0 新增功能

C# 6.0
C#6.0 在 2012 年7月隨著.NET Framework 4.6 一同釋出,後期釋出了.NET Framework 4.6.1,4.6.2。
C# 在 3.0 版和 5.0 版對物件導向的語言新增了主要的新功能。 在 6.0 版中,它不再推出主導性的殺手鐗,而是釋出了很多使得 C# 程式設計更有效率的小功能。這些功能每一個都很有趣。 但從整體來看,可以發現一個有趣的模式。 在此版本中,C# 消除語言樣本,讓程式碼更簡潔且更具可讀性。 所以對喜歡簡潔程式碼的使用者來說,此語言版本非常成功。

具體功能請檢視 C#6.0 新增功能

  除了釋出此版本,他們還做了另一件事,雖然這件事本身與傳統的語言功能無關。 他們釋出了 Roslyn 編譯器即服務。 C# 編譯器現在是用 C# 編寫的,你可以使用編譯器作為程式設計工作的一部分。

C# 5.0
C#5.0 在 2012 年2月隨著.NET Framework 4.5 一同釋出,後期釋出了.NET Framework 4.5.1,4.5.2。5.0 版是C#語言有針對性的一個版本。 對此版本中所做的幾乎所有工作都歸入另一個突破性語言概念:適用於非同步程式設計的 async 和 await 模型。
 
C# 4.0
C# 4.0 版和 Visual Studio 2010 一起釋出於 2010 年4月,對應 .NET Framework 4.0。C# 4.0 版很難達到 3.0 版的創新水平。 在 3.0 版中,C# 已經完全從 Java 的陰影中脫穎而出,嶄露頭角。 很快成為一種簡潔精煉的語言。此版本引入了以下新功能:
 
C# 3.0

C# 3.0 版和 Visual Studio 2008 一起釋出於 2007 年下半年,但完整的語言功能是在 .NET Framework 3.5 版中釋出的。 此版本標示著 C# 發展過程中的重大更改。 C# 成為了真正強大的程式語言。

下面列出的功能中大多數似乎都是不可或缺,難以分割的。 它們的組合都是經過巧妙佈局。 我們通常認為 C# 版本的殺手鐗是查詢表示式,也就是語言整合查詢 (LINQ)。LINQ 的構造可以建立在更細微的檢視檢查表示式樹、Lambda 表示式以及匿名型別的基礎上。 不過無論如何 C# 3.0 都提出了革命性的概念。 C# 3.0 開始為 C# 轉變為物件導向/函式式混合語言打下基礎。

 
C# 2.0

微軟於2005年11月釋出了.NET Framework 2.0,同時釋出了Visual Studio 2005,同步對應的C#升級到了2.0版本。

除現有功能以外的其他 C# 2.0 功能:

  • 方法組轉換(委託)
  • 靜態類
  • 委託推斷

 

C# 1.2

 隨 Visual Studio 2003 一起提供的 C# 版本 1.2。 它對語言做了一些小改進。 最值得注意的是,從此版本開始,當 IEnumerator 實現 IDisposable 時,foreach 迴圈中生成的程式碼會在 IEnumerator 上呼叫 Dispose

C# 1.0

C# 1.0 的主要功能包括:

 

C# 與 .NET Framework 對應關係
下表中列出 C#、.NET、VS版本對應關係

C#版本

釋出時間

.NET 版本

VS版本

CLR版本

C#1.0

2002-02-13

.NET Framework 1.0

VS.NET 2002

1.0

C#1.1
C#1.2

2003-04-24

.NET Framework 1.1

VS.NET 2003

1.1

C#2.0
C#3.0(除Linq

2005-11-07

.NET Framework 2.0

VS2005

2.0

C#3.0(除Linq

2006-11

.NET Framework 3.0

VS2008

2.0

C#3.0

2007-11-19

.NET Framework 3.5

VS2008

2.0

C#4.0

2010-4-12

.NET Framework 4.0

VS2010

4

C#5.0

2012-02-20

.NET Framework 4.5

VS2012

4

C#5.0

2013-10-17

.NET Framework 4.5.1

VS2013

4

C#5.0

2014-05-05

.NET Framework 4.5.2

VS2013

4

C#6.0

2015-07-26

.NET Framework 4.6

VS2015(v14)

4

C#6.0

2015-11-30

.NET Framework 4.6.1

VS2015(v14)

4

C#7.0

2016-08-02

.NET Framework 4.6.2

VS2017(v15)

4

C#7.1

2017-04-05

.NET Framework 4.7

VS2017(v15.3)

4

C#7.2

2017-10-17

.NET Framework 4.7.1

VS2017(v15.5)

4

C#7.3

2018-04-30

.NET Framework 4.7.2

VS2017(v15.7)

4

C#8.0

2019-04-18

.NET Framework 4.8

VS2019(v16)

4

 

 

相關文章