.NET Core Roadmap
這篇文章是由 Scott Hunter 撰寫。
從我們釋出 .NET Core / ASP.NET Core 1.0 已經兩個多禮拜了。開發團隊利用這兩個禮拜喘息了一下,而現在開始規劃未來將要做的事。我們已經看到很多 .NET Core SDK 的下載與非常多的回饋。請持續給予我們回饋。
以下是一個粗略的時間表,來看看未來將會有什麼改變。請注意,這些日期是團隊目前努力的目標,但有可能會改變。
1.0.1(~2016 八月)
我們正在積極地監測 1.0 版本中要包含到 .NET Core SDK 1.0.1 版本的問題。這個補丁更新並沒有確切的時間,但有可能會在八月初的時候。以下是幾個我們正在研究的首要問題:
donet build
的效能改善,將會改善 ASP.NET Core 的發佈時間。- 更新 F# 的
dotnet new
模板,讓它們在 .NET Core 上使用最新的 F# alpha 版本。 - 根據 Crash 遙測狀況對工具的多項修補。
Q4 2016 / Q1 2017
這將會是一個很小的更新,主要重點是在用 .csproj/MSBuild 替代 .xproj/project.json。專案格式的更新應該會是自動的,只要打開一個 1.0 的專案就會將它更新為新的格式。除此之外,在 runtime 與函式庫也會有新的功能與改進。
.NET Core 1.0 包含了一個 .NET Core Tools 的 preview 版本,叫作「Preview 2」。這個工具是「preview」主要因為我們知道我們會改變工具的體驗在 1.0 之後。在這個版本中 .NET Core 與 .NET Core Tools 都將是「RTM 等級」或「stable」。
.NET Core 工具
- 支援 .csproj/MSBuild 專案系統
dotnet restore
改善,不重建 .NET Core 中的套件- 管理機器上架構的新指令
dotnet publish
為了最佳的發佈大小,將會只發佈必須的 dependencies。
語言(可用於 .NET Framework 與 .NET Core)
下一個對於 .NET 語言的版本將會應用於所有 .NET 平台。以下是一個簡短的總結有關於這版本的功能:
- 把函數程式語言的概念帶入 .NET 語言
- Tuples
- 模式比對
- 效能與程式碼品質
- Value Tasks
- Ref returns
- Throw expressions
- Binary literals
- Digit seperator
- 開發者生產力
- out 變數
- 區域函數
這些功能都將可以在 C# 7 中使用。VB 15 也將會實作所有影響語言 interop 的功能(tuples、ref returns 等),但有些功能會在下一次的語言更新(例如:模式比對),或並不在 roadmap 中(例如:區域函數)。
除了 C# 與 VB 之外,我們也會釋出一個新的 F# 語言的版本。 F# 4.1 將會包含像是下面這些東西:
- 完全支援 .NET Core
- 更好的 IDE 體驗,在工作區支援的 F# 語言服務
- 新的語言功能,例如 Struct Tuples 可與
ValueTuple 互相操作,更多的支援,像是 structs的型態註解,fixed 關鍵字以及更多
。
ASP.NET Core
- Web Sockets
- URL Rewriting Middleware
- Azure
- App Service 啟動時間改善
- App Service 記錄提供者
- Azure 金鑰保存庫提供者
- Azure AD B2C 支援
- 容器與微服務
- Service Fabric 支援透過以伺服器為基礎的 WebListener
- MVC & DI 啟動時間改善
- 預覽
- SignalR
- 檢視頁面(不用 MVC Controllers 檢視)
.NET Core Runtime 與函式庫
- ARM 32/64
- 更多 Linux 的發佈(從原始碼建置)
Entity Framework Core
- Azure
- 瞬態錯誤處理(彈性)
- 對應
- 自訂類型轉換
- 複雜類型(value objects)
- Entity entry APIs
- 更新管道
- CUD 預存程序
- 更好的批次處理(TVPs)
- Ambient transactions
- 查詢
- 穩定性、效能
- 移轉
- 種子資料
- 穩定性
- 反向工程
- 多元化
- VS 物件模板(UX)
Q1 2017 / Q2 2017
這個版本將會把許多消失的 API 加回 .NET Core,包含網路功能、序列化、資料等等。.NET 的多種風貌,是大量的通用 BCL 程式碼而且限制在應用模型 (WinForms, WPF, ASP.NET 等) 之中。這些 API 將會是 .NET Standard 2.0 的一部分,將會同時被釋出,讓 API 可以在 .NET Framework、.NET Core 與 Xamarin 保持一致性。而撰寫可攜式程式碼,可以執行在所有主要針對 .NET Standard 2.0 的 .NET 平台將會更容易。期望在我們釋出 Q4/Q1 版本之後可以開始看到這個工作的預覽版。
更好的溝通
我們希望團隊在做的事可以更加透明化。為了做到這點我們計劃更頻繁在這個部落格上更新團隊的訊息。以下是未來標題的粗略清單:
- .NET Core Roadmap(本文)
- ASP.NET Upcoming Highlights
- Entity Framework Upcoming Highlights
- .NET CLI Upcoming Highlights
- Support and Versioning .NET Core
- Telemetry in .NET Core
- .NET Standard
- APIs Returning
- Project Conversion from project.json to .csproj
下週我們希望展示一些例子有關 .csproj/MSBuild 的轉換,與 ASP.NET、EF 或 .NET CLI 其中之一的新功能深入剖析。
謝謝您讀完這些,請持續給予我們回饋!
本文翻譯自 .NET Core Roadmap
若對以上技術及產品有任何問題,很樂意為您服務! 請洽:台灣微軟開發工具服務窗口 – MSDNTW@microsoft.com / 02-3725-3888 #4922