中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

【C#懶蛋編程——5分鐘經驗分享】02使用partial關鍵字,分離代碼

發布時間:2020-07-08 04:53:54 來源:網絡 閱讀:932 作者:老G 欄目:游戲開發

因為篇幅很短,所以嘗試全文字寫法。幾分鐘看完的文字也沒必要用十幾分鐘寫完是吧。

C#中的partial關鍵字,是一個非常有用的東西,尤其是在代碼組織方面。

1.

每一個項目都會構建大量的class文件,也需要使用這些class創建非常多的對象。但是出于業務安全性和調試方便,在創建對象前需要對對象的參數進行有效性檢測(例如斷言),而對象的創建,是一個非常復雜的事情,有時需要一組函數才能完成。這兩者(class本身的代碼和創建對象的代碼)的代碼混在一起,搞得單個class文件非常臃腫。

partial可以把類邏輯(構造函數我也算成是類邏輯的代碼),和對象創建代碼徹底分開。對我來說這是一個很有用的功能。一般構建一組class(通常是一個父類和一堆子類),我會分成若干文件,Parent,Child1,Child2……等,再使用一個專門的XXXHelper文件來編寫各種Child的對象生成代碼。Helper中可能是instance,create等寫法,也可能是各種工廠,再加上一些有效性檢測和異常處理。這樣代碼非常清晰,尤其是Child的代碼可以寫的很干凈。

2.

partial還有一類非常有意思的寫法。很多項目都喜歡編寫全局工具或數據類,名叫Global或者Config等,里面有很多數據和函數。根據經驗判斷,真正全局所有模塊使用的東西不會很多。很多東西都只是在部分模塊中使用。時間久的話,你根本分不清楚這些函數或數據是對應哪個模塊下面的,這時候partial的分散寫法就有很大優勢了。你可以寫一些分散文件,集成到各個模塊的文件夾下面,當然各個模塊通用的還是放到一個文件里面好,partial可以保證你依然能通過同一個全局名字訪問他。

由于partial關鍵字,代碼都在同一個類名字下面,你可以在不同的文件中自由移動這些代碼。

3.

partial對自動化支持非常有用,你可以把代碼分成兩部分,一部分是業務代碼,一部分是自動化生成代碼(例如很多領域的UI編輯器就是這么干的,C++的做法也是類似,只是沒partial用的別的方法,思路都是一樣)。因為在不同文件中,自動化生成代碼不會干擾業務代碼。自動化生成對于提高開發效率至關重要。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

时尚| 察雅县| 石家庄市| 达州市| 盐源县| 湖北省| 广东省| 景德镇市| 夏津县| 东辽县| 隆林| 潜山县| 吴忠市| 鹤庆县| 海伦市| 南安市| 道真| 金山区| 定边县| 永定县| 定安县| 太仆寺旗| 米易县| 丹寨县| 湾仔区| 承德县| 宝应县| 金门县| 河南省| 建湖县| 盖州市| 科尔| 雅江县| 登封市| 建德市| 广河县| 陆丰市| 兴城市| 镇康县| 开化县| 象州县|