C#的未來計劃
在NDC London上,Mads Torgersen提出了對未來C#語言的的計劃。需要注意的是,這些只是計劃,不會保證在哪個版本釋出。Damien Guard對這些建議進行了總結和簡要的分析,我們在此為您挑選了其中的一些內容。
只讀屬性
只讀自動屬性將允許開發者在一行程式碼中宣告屬性及其後臺欄位。
public int X { get; } = x;
靜態型別using語句
Visual Basic和Java都允許在名稱空間中匯入模組(C#靜態類)。這樣可以移除常用的靜態函式前面的重複程式碼,如“Math.”。
主建構函式
通過在類名後加上引數,開發者將不再需要顯式建立建構函式。這可以移除將建構函式引數複製到私有欄位時的冗長程式碼。
public class Point(int x, int y) { private int x, y; }
屬性和方法表示式
屬性表示式可以為簡單的只讀屬性剔除一些原來必須的樣板程式碼。
public double Distance => Math.Sqrt((X * X) + (Y * Y));
方法表示式也是如此,當然它們可以接受引數。注意,引數化的屬性仍然沒有列入考慮範圍之內。在未來相當長一段時間裡,這隻能是VB獨有的特性。
函式引數
如今大多數開發者從來不用陣列,除非要使用params關鍵字。因此有人提議讓params也支援IEnumerable
int.TryParse("123", out int x);
空傳播
在處理凌亂的資料時,開發者經常需要在讀取屬性或呼叫方法前編寫一系列空判斷邏輯。?.語法將幫助我們剔除這些邏輯,只有當它前面的值不為空時,才會呼叫後面的方法。
var bestValue = points?.FirstOrDefault()?.X;
在本例中,如果points為空,或points.FirstOrDefault()返回空,那麼將忽略.X,並返回空。它也可以和??連線使用,以提供可選的預設值。
var bestValue = points?.FirstOrDefault()?.X ?? -1;
Objective-C和Smalltalk這樣的“訊息傳遞”語言都包含這樣的語法。它通常被認為是有問題的,因為本應丟擲空引用異常的地方,卻悄無聲息地被忽略了。
原文連結:Future Plans for C#
相關文章
- 未來規劃
- 展望 C# 7 的未來C#
- 未來的健身計劃 更加科學 更加健康 更加智慧
- 【譯】設計師的職業未來,該如何規劃?
- 一個老程式設計師未來10年的計劃目標程式設計師
- 遊戲設計&建築設計:未來,誰來規劃我們的虛擬空間?遊戲設計
- 偶像企劃類遊戲的未來在哪裡?遊戲
- How we redesigned the NSQ- 其他特性及未來計劃
- C# 程式語言的未來功能 (轉)C#
- 程式設計的未來程式設計
- 阿里安全釋出“青色計劃” 招募未來安全人才阿里
- 73%的廣告主表示 Tiktok的變數可能影響未來投放計劃變數
- 程式設計師的未來程式設計師
- 擁抱未來 360遊戲答謝盛典公佈DNA重塑計劃遊戲
- 法拉第計劃未來在美國測試自動駕駛汽車自動駕駛
- Build 2018大會:C#的未來UIC#
- 在深度學習爆發前夜,未來學家為人類的未來出謀劃策深度學習
- 程式設計師只能吃青春飯?程式設計師該怎麼規劃自己的未來程式設計師
- 程式設計師的打怪升級之路,程式設計師未來職業規劃全路線程式設計師
- 為開發者提供助力,Ohayoo“春風計劃”佈局休閒遊戲未來遊戲
- 谷歌智慧城市計劃發力:招聘新團隊欲打造未來城市谷歌
- 計算的未來是什麼?
- 程式設計師迷茫的未來程式設計師
- 企業無線網路裝置的未來規劃
- 目前最系統的程式設計師未來職業規劃路線,請收藏程式設計師
- 《初音未來:歌姬計劃》:得到了“心”的機器人 能否永遠地歌唱?機器人
- 服裝製造企業存在的問題以及未來行業發展計劃行業
- 未來計算世界 (轉)
- 邊緣計算與雲端計算的未來
- 【譯】 Dart 2.12 釋出,穩定空安全宣告和FFI版本,Dart 未來的計劃Dart
- New View Strategies:科技行業中38%的女性計劃在未來兩年內離職View行業
- Gartner:未來50%的大城市居民將為智慧城市計劃分享個人資料
- 網頁設計的未來在何方?網頁
- 未來程式設計的9大猜想程式設計
- 雲端計算的前世今生與未來
- 新人小白入行IT必備:程式設計師未來職業規劃路線程式設計師
- 布客社群未來規劃 202407
- 未來計算在“雲-端”薦