新聞中心
通過對.NET Framework的學(xué)習(xí),我們可以知道,它能為開發(fā)人員提供一個功能非常全面的開發(fā)環(huán)境。那么如何才能真正的掌握這一開發(fā)平臺呢?首先來了解一下.NET Framework分部方法的相關(guān)介紹。#t#

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、網(wǎng)站制作、昌邑網(wǎng)絡(luò)推廣、小程序設(shè)計、昌邑網(wǎng)絡(luò)營銷、昌邑企業(yè)策劃、昌邑品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供昌邑建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
早上看.NET Framework分部方法這個特性。例子如下,第一個類為定義類,第二、第三個類為實現(xiàn)類。
- public partial class AI
- {
- public void Active()
- {
- this.Run();
- this.Jump();
- }
- partial void Run();
- partial void Jump();
- }
- public partial class AI
- {
- partial void Run()
- {
- Console.WriteLine("我在跑");
- }
- }
- public partial class AI
- {
- partial void Jump()
- {
- Console.WriteLine("我在跳");
- }
- }
.NET Framework分部方法可以:
1. 以上三個類可以不放在相同的CS文件里
2. 后兩個分部類如果不寫,編譯能順利通過,在IL里產(chǎn)生有方法體的Run和Jump,但是空實現(xiàn)。
.NET Framework分部方法不可以:
1. 分部方法不能是公開類型,必須是私有。
2. 實現(xiàn)類不能和定義類分別存在不同的程序集里。
.NET Framework分部方法有價值的地方:
1. 更細(xì)化分工過程。以前系統(tǒng)分析到對象級,現(xiàn)在可以細(xì)到方法級別。從例子里看,對象框架維護人定義了Active方法,而Run和Jump可能被分派到其他人實現(xiàn)。
這樣的分工模式和更大規(guī)模的集成開發(fā)趨勢是緊密關(guān)聯(lián)的。簡單的看,這只是一個新的語言特性;仔細(xì)思考,這其實是軟件朝工業(yè)化方向發(fā)展的一個信號。以后的軟件開發(fā)過程勢必是基于更多特性(或者說是開發(fā)工藝),在生產(chǎn)線上完成的。一個人就是一個螺絲釘,讓你實現(xiàn)Run就Run,讓你Jump就Jump,如果你想發(fā)揮自己的聰明才智,好,就在這個范圍內(nèi)盡情的發(fā)揮吧!
2. 代碼可以寫的更優(yōu)雅,如果本例中的Run和Jump的內(nèi)部實現(xiàn)異常復(fù)雜(AI機器人行為嘛),一個CS文件搞個幾千上萬行,別人讀的時候時會吐血的。如果再碰到一個寫代碼不地道的,把方法堆砌起來了事,那是連肝都要吐出來的。有了分部方法,就可以把問題壓到局部,不想看的地方我就可以看不見。
3. 代碼優(yōu)雅只是一個表象,如果是犧牲了性能換取的,我寧愿不要這個特性。事實上恰恰相反,分部方法的效率是非常OK的。具體就去寫個例子,觀察IL吧。哈哈!
當(dāng)前名稱:.NETFramework分部方法功能詳解
文章鏈接:http://www.dlmjj.cn/article/dpdhhch.html


咨詢
建站咨詢
