波多在线播放_激情深爱五月_久久欧美精品_成人超碰_国产久_www.pixiv.moe

Rss & SiteMap

曙海教育集團(tuán)論壇 http://www.bjzhda.cn

曙海教育集團(tuán)論壇
共1 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標(biāo)題:微軟 VS2010 中 VB 和 C# 語言的增強(qiáng)

1樓
wangxinxin 發(fā)表于:2010-12-14 13:52:57
 

選擇一種編程語言是每一個(gè)程序員都要做的個(gè)人決定。這就好像對(duì)冰淇淋口味的選擇一樣。冰淇淋口味的選擇多多,但你最喜歡的口味只關(guān)系到你的個(gè)人偏好。

在Visual Studio 2010種,為了給程序員提供他們構(gòu)建出色軟件時(shí)所需要的所有工具而不用局限于他們所選擇的語言,我們從好幾個(gè)方面增強(qiáng)了我們最流行的兩種語言,Visual Basic和C#語言的功能。

Visual Basic

Visual Basic開發(fā)團(tuán)隊(duì)為了讓開發(fā)人員可以用更少的代碼完成更多的任務(wù),集中增加了和生產(chǎn)力相關(guān)的功能特性。Visual Basic客戶最常提出的要求是在大多數(shù)情況下能省去為代碼聲明分成多行時(shí)所需要添加的下劃線(“_”)。Visual Basic 10增加了隱式斷行的功能特性,能在大多數(shù)情況下不要求開發(fā)人員使用下劃線來斷行。

Function Filter(
                    ByVal customers As List ( Of Customer),
                    ByVal orderCount As Integer
                   )
        Dim query =
                    From c In customers
          Where c.Orders.Count >
                orderCount
                    Select c

另一個(gè)新添加的和提高生產(chǎn)力有關(guān)的功能特性是自動(dòng)實(shí)現(xiàn)屬性。有了自動(dòng)實(shí)現(xiàn)屬性的功能,多行常規(guī)的屬性實(shí)現(xiàn)的代碼就可以用一行簡(jiǎn)單的聲明代替。在加入該功能特性之前,屬性聲明經(jīng)常如下所示:

Private _FavoriteFlavor As String = "Butter Pecan"
    Property FavoriteFlavor() As String
        Get
            Return _FavoriteFlavor
        End Get
        Set(ByVal value As String)
            _FavoriteFlavor = value
        End Set
    End Property
    Private _FlavorList As New List(Of Flavor)
    Property FlavorList() As List(Of Flavor)
        Get
            Return _FlavorList
        End Get
        Set(ByVal value As String)
            _FlavorList = value
        End Set
    End Property

現(xiàn)在,屬性聲明能用簡(jiǎn)單的多得方法實(shí)現(xiàn):

Property FavoriteFlavor As String = "Butter Pecan"
    Property FlavorList As New List(Of Flavor)

集合初始化和數(shù)組Literal也變得更加簡(jiǎn)單。現(xiàn)在集合能在它們被聲明的時(shí)候就被初始化,而數(shù)組Literal的類型能交由編譯器來識(shí)別。

Dim toppings = New List(OfString) From
        {
         "sprinkles",
         "chocolate chips",
         "strawberries"
        }
    Dim cones = {"sugar cone", "waffle cone"} 'String()的類

型被編譯器識(shí)別出來

現(xiàn)在,Visual Basic 10.0有了更好的lambda表達(dá)式支持。現(xiàn)在,Lambda表達(dá)式可以包含沒有返回值的表達(dá)式,就像下面sub關(guān)鍵詞所要表達(dá)的那樣:

Array.ForEach(toppings, Sub(n) Console.WriteLine(n))

有時(shí)候,你會(huì)想在Lamdba表達(dá)式聲明中作些更復(fù)雜的工作。Visual Basic 10.0支持多行的Lamdba表達(dá)式。就像在常規(guī)Lambda表達(dá)式中一樣,編譯器將盡可能識(shí)別變量和返回類型。

Dim doubleDown = Function(n AsString)
                         If n.StartsWith("s") Then
                             Return "extra " & n
                         Else
                             Return n
                         End If
                     End Function

在Visual Basic 10.0中,和Python及Ruby語言等動(dòng)態(tài)語言的互通操作也變得更加簡(jiǎn)單。比如,下面的代碼片斷調(diào)用了一個(gè)Python庫“math.ph”中的方法:

Dim mathLib As Object = python.UseFile("math.py")
    Dim firstNumber = 44.2
    Dim secondNumber = 9.5
    mathLib.PowerOf(firstNumber, secondNumber)

C#

C# 4.0主要增強(qiáng)了與動(dòng)態(tài)編程語言的互通性并改進(jìn)了Office編程性。動(dòng)態(tài)查找是C# 4.0的一個(gè)新功能,能讓你用同樣的方法使用和操作IronPython、IronRuby、JScript、HTML DOM以及標(biāo)準(zhǔn).NET庫中的對(duì)象,不管該對(duì)象從哪里獲得。命名參數(shù)和可選參數(shù),以及對(duì)COM客戶端支持的改進(jìn)等語言方面的增強(qiáng)讓那些和Office API打交道的C#開發(fā)人員與Visual Basic開發(fā)人員有同樣的美妙體驗(yàn)。

在你的代碼中加入新的dynamic關(guān)鍵詞能讓它的類型在運(yùn)行時(shí)被動(dòng)態(tài)解析而非編譯時(shí)的靜態(tài)解析。這讓動(dòng)態(tài)語言用一種C#編程員覺得自然的方式在C#語言中暴露他們的對(duì)象:

dynamic dynamicObject = GetDynamicObjectFromRuby();
    dynamicObject.Foo(7);
    dynamicObject.Property = "Property value";
    dynamicObject[0] = "Indexed value";

可選方法參數(shù)對(duì)Visual Basic和C++的編程員來說再熟悉不過。現(xiàn)在C#編程員同樣可以使用這種參數(shù)。可選參數(shù)在方法簽名中與一個(gè)默認(rèn)值一同聲明,如下所示:

private void CreateNewStudent(string name, int 

currentCredits = 0, int year = 1)

上面這個(gè)方法可以用下面任意一種方法調(diào)用:

CreateNewStudent("Chloe");
    CreateNewStudent("Zoe", 16);
    CreateNewStudent("Joey", 40, 2);

如果要省略currentCredit參數(shù)但指明year參數(shù),可以使用新加入的命名參數(shù)功能特性(如高亮的代碼所示)。下面所有的調(diào)用都是合法的:

CreateNewStudent("Jill", year: 2);
    CreateNewStudent(name:"Bill", currentCredits: 30, year: 

2);
    CreateNewStudent("Will", currentCredits: 4);

即使不用可選參數(shù),命名參數(shù)同時(shí)也是一種用來對(duì)你現(xiàn)有方法編寫自定義調(diào)用的好方法。

共1 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團(tuán)
Powered By 曙海教育集團(tuán) Version 2.2
Processed in .06055 s, 2 queries.
主站蜘蛛池模板: 欧美一级黄色录相 | 国产成人精品免高潮在线观看 | 欧美大黑bbb | 成人综合在线观看 | 国产网站在线播放 | www.亚洲在线| 国产网红主播chinese | 欧美一级二级三级 | 国内精品视频在线观看 | 97精品国产高清久久久久蜜芽 | 99ri精品 | 美女网站在线观看视频18 | 欧美激情视频一区二区三区在线播放 | 91精品天美精东蜜桃传媒入口 | 成人福利视频网 | 国产精品久久久久无码av | 国产精品无码2021在线观看 | 在线观看日韩 | 亚洲精品免费在线观看 | 偷拍做爰吃奶视频免费看 | 国产欧美日本亚洲精品五区 | 色哟哟哟在线精品观看视频 | 久草手机在线 | 色男人综合 | 久久久一区二区三区不卡 | 欧美日韩中文国产一区发布 | 天天摸天天操免费播放小视频 | 成人免费a视频 | 国产成人精品在线观看 | 亚洲电影在线观看 | 毛片免费在线 | 精品美女在线观看视频在线观看 | 国产区视频在线观看 | 成人黄色在线视频 | 国产一区二区久久 | 国产亚洲精品久久无码小说 | 日本不卡在线观看免费v | 国产亚洲女人久久久久久 | 成人在线视频一区 | 99精品久久秒播无毒不卡 | 免费中日高清无专码有限公司 |