91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

【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

尼玛县| 镇安县| 肇庆市| 广元市| 德清县| 万山特区| 阳谷县| 吐鲁番市| 伊金霍洛旗| 大邑县| 诸暨市| 大田县| 淅川县| 陈巴尔虎旗| 东丰县| 凤冈县| 泊头市| 越西县| 平和县| 宜宾县| 呼伦贝尔市| 惠水县| 宿迁市| 奉化市| 东宁县| 独山县| 昭觉县| 布尔津县| 柳江县| 辉县市| 筠连县| 平遥县| 景德镇市| 天峨县| 金华市| 偃师市| 盐池县| 绥宁县| 同德县| 漳平市| 赤城县|