扒一扒C# 8.0新功能,程序員會買單嗎?
根據 .Net 基金會發布的編程語言***路線圖,為了提供代碼質量,Microsoft C# 8 將具有可空引用類型。該功能除了為現有的非空引用添加安全引用類型,編譯器在遇到可空類型的引用或 Null 值分配給非空變量類型時發出警告。
可空引用類型旨在幫助開發人員阻止空引用異常,它的核心是表達一個無效意圖。當某些東西不為空時,編譯器會去識別,如果用戶將 null 賦值給未被聲明為 null 的應用時,編譯器會給出警告。通過這種方法,讓程序員盡快找到錯誤并且迅速改正。
但是,遺憾的是微軟現在還沒有透露 C# 8 的發布時間。
除了上述功能,C# 8 還有以下計劃功能:
采取相應手段來處理違規行為。
增加默認接口方法,接口可以通過虛擬擴展方法進行演進。API 作者可以在將來的版本中為接口添加方法,而不會破壞源或二進制兼容性。該功能已經可用于 Java 等語言。
異步流功能提供了一個異步版本的抽象 IEnumerable,它是可以枚舉非特定集合的基本接口。
擴展,提供一種定義擴展成員的新類型。雖然 C# 中已經有作為擴展類型實例的方法,但是C# 8 將通過支持靜態和實例成員來擴展該功能。