新聞中心
#t#C#作為Visual Studio的當(dāng)家花旦,每次Visual Studio和.NET Framework的升級(jí)都會(huì)給她帶來(lái)很多激動(dòng)人心的特性,讓這位微軟力捧的明星更加耀眼奪目。這個(gè)Visual Studio 2010 CTP中就包含了C# 4.0的動(dòng)態(tài)查詢(Dynamic Lookup)、命名參數(shù)/可選參數(shù)、COM互操作簡(jiǎn)化等等新特性。

除了語(yǔ)言本身的升級(jí)外,在Visual Studio的IDE上微軟也下了功夫,提供了很多實(shí)用的功能,來(lái)幫助程序員們高效地開(kāi)發(fā)越來(lái)越復(fù)雜的應(yīng)用。接下來(lái),我們從語(yǔ)言本身和IDE兩個(gè)方面,來(lái)介紹Visual Studio 2010 CTP所帶來(lái)的針對(duì)托管語(yǔ)言的新特性。
每次Visual Studio的升級(jí),總是伴隨著大量新的語(yǔ)言特性的引入和IDE的更加高效智能。這些新特性的引入,令無(wú)數(shù)跟隨Microsoft的程序員“痛并快樂(lè)著”,快樂(lè)的是新特性的引入,無(wú)疑會(huì)提高開(kāi)發(fā)效率,痛苦的是又要開(kāi)始學(xué)習(xí)新技術(shù)了,但是不管怎樣,這就是“程序人生”。文章的意義,就是想讓大家的快樂(lè)多一點(diǎn)點(diǎn),痛苦少一點(diǎn)點(diǎn),人生就更加美好了。話不多說(shuō),開(kāi)始我們的新歷程吧。
在Visual Studio 2010 CTP中,Visual Basic 10、C# 4.0以及IDE所引入的新特性主要包括:
Visual Basic 10
| 特性 | 描述 |
| 自動(dòng)實(shí)現(xiàn)屬性 (Auto-Implemented Properties) | 在Visual Basic 10中,我們可以簡(jiǎn)單地通過(guò)一行就完成標(biāo)準(zhǔn)屬性的定義。自動(dòng)實(shí)現(xiàn)屬性和 C# 中的相同概念是完全一致的。 |
| 集合初始值設(shè)定 (Collection Initializers) | Visual Basic引入了新的關(guān)鍵字From來(lái)簡(jiǎn)化集合的初始值設(shè)定,這將大大簡(jiǎn)化一些繁瑣的初始化工作。 |
| 隱式換行 (Implicit Line Continuations) | 我們都知道,在Visual Basic中是使用換行符”_”顯式地進(jìn)行換行的?,F(xiàn)在,在很多情況下我們可以不使用換行符”_”而實(shí)現(xiàn)隱式換行。 |
| No-PIA 部署 (No-PIA) | 我們?cè)诰帉?xiě)基于 Microsoft Office 的應(yīng)用程序時(shí),往往需要部署一堆 VSTO 的 Runtime 程序集,但有時(shí)候我們編寫(xiě)一些應(yīng)用程序時(shí),僅僅調(diào)用了這些 Interop 程序集中很少的功能。例如僅僅保存或打開(kāi)了一個(gè) Excel 表格等,如果每次部署這樣的應(yīng)用程序都需要分發(fā)整個(gè) PIA(Primary Interop Assemblies)的話就顯得多此一舉。在新的 Visual Basic 中,可以將一個(gè) PIA 程序集的屬性設(shè)置為 Embedded 來(lái)將其用到的對(duì)象引用內(nèi)嵌到我們自己的程序集中,這樣就避免了分發(fā)整個(gè) VSTO Runtime 的臃腫部署方式。 |
| 內(nèi)聯(lián) Lambda 表達(dá)式 (Inline Lambda Expressions) | 在Visual Basic 9中我們使用Lambda表達(dá)式 時(shí),無(wú)論是否真正需要,都要一個(gè)返回值。在Visual Basic 10中,返回值已經(jīng)不再是必須的,這就更C#保持了一致。 另外,在Visual Basic 10中, Lambda 表達(dá)式可以包含多條語(yǔ)句以處理比較復(fù)雜的邏輯,而無(wú)需像以前那樣把邏輯處理交給其他的函數(shù)來(lái)處理。 |
C# 4.0
| 特性 | 描述 |
| 動(dòng)態(tài)類(lèi)型 (Dynamic Types) | C# 4.0引入了對(duì)動(dòng)態(tài)類(lèi)型的遲綁定(late binding) ,當(dāng)你得到一個(gè)動(dòng)態(tài)類(lèi)型的對(duì)象時(shí),不管他是來(lái)自COM還是IronPython、HTML DOM還是反射,只需要對(duì)其進(jìn)行操作即可,運(yùn)行時(shí)會(huì)幫你指出針對(duì)特定的對(duì)象,這些操作的具體意義。這將帶來(lái)很多新的應(yīng)用,例如簡(jiǎn)化對(duì)Silverlight應(yīng)用程序中HTML DOM對(duì)象的訪問(wèn)。 |
| 無(wú)PIA特性 (No-PIA) | 主互操作程序集(Primary Interop Assembly)是從COM接口生成的大型.NET程序集,用于協(xié)助完成強(qiáng)類(lèi)型的互操作。無(wú)PIA特性允許你在設(shè)計(jì)時(shí)使用PIA,而無(wú)需在運(yùn)行時(shí)使用它們。C#編譯器會(huì)將程序中實(shí)際用到的PIA中的一小部分直接編譯到程序集中,在運(yùn)行時(shí)無(wú)需加載PIA,這樣可以簡(jiǎn)化程序的部署,同時(shí)也可以減少 內(nèi)存的使用。 |
| Office開(kāi)發(fā) (Office Programmability) | C# 4.0支持命名參數(shù)和可選參數(shù),這將大大簡(jiǎn)化COM互操作的語(yǔ)法,使得Office開(kāi)發(fā)更加簡(jiǎn)單。 |
Visual Studio IDE
| 特性 | 描述 |
| 調(diào)用樹(shù) (Call Hierarchy) | 在Visual Studio 2010 CTP中,我們可以從解決方案中的任何一個(gè)成員函數(shù)直接跳轉(zhuǎn)到調(diào)用它的函數(shù)或者它所調(diào)用的函數(shù)。這極大地方便了我們理解程序的執(zhí)行流程。 |
| 即用即生成 (Generate from Usage) | 新的代碼編輯器將根據(jù)用戶的使用,在后臺(tái)自動(dòng)地生成新的類(lèi)型和成員。 |
| 高亮引用 (Highlight Reference) | 在新的代碼編輯器中,我們可以將光標(biāo)停留在標(biāo)識(shí)符上,代碼編輯器將高亮所有對(duì)應(yīng)的標(biāo)識(shí)符引用。使用Ctrl + Shift + Up和Ctrl + Shift + Down組合鍵,我們可以在標(biāo)識(shí)符的多個(gè)引用之間跳轉(zhuǎn)。這個(gè)新特性在我們查找某些對(duì)象的使用情況時(shí)非常有用。 |
| 快速查找 (Quick Search) | Visual Studio 2010引入了一個(gè)簡(jiǎn)化后的快速查找對(duì)話框,在這個(gè)快速查找對(duì)話框中,我們可以搜索解決方案中的文件,符號(hào),注釋等等。使用Ctrl+”,”快捷鍵可以調(diào)出這個(gè)快速查找對(duì)話框。 |
上面關(guān)于托管語(yǔ)言和IDE新特性的介紹,都非常概括而抽象,為了讓大家有一個(gè)直觀的感受,下面我們以一些實(shí)際的例子,來(lái)為大家展示這些新特性。
新聞名稱(chēng):閑扯VisualStudio2010CTP
網(wǎng)站鏈接:http://www.5511xx.com/article/dhcgcco.html


咨詢
建站咨詢
