中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

可選參數(shù)在.NET中全面開(kāi)花

  .NET一直都支持可選參數(shù),但是C#語(yǔ)言卻并不支持,除了調(diào)用COM庫(kù)以外,可選參數(shù)通常是被禁止使用的。現(xiàn)在,隨著C# 4對(duì)可選參數(shù)的支持,我們可以看到可選參數(shù)被越來(lái)越多的使用,而不僅僅限于遺留代碼中。這些應(yīng)用包括與動(dòng)態(tài)語(yǔ)言的互操作、只讀數(shù)據(jù)類(lèi)型,以及ASP.NET MVC中的許多地方。

  顯然,COM仍然是可選參數(shù)的主要用武之地。例如,當(dāng)你使用Office庫(kù)時(shí),某個(gè)函數(shù)可能會(huì)有超過(guò)20個(gè)參數(shù),手動(dòng)指定每一個(gè)參數(shù)是非常不方便的。如果再?zèng)]有輔助的標(biāo)記,你就只能通過(guò)數(shù)參數(shù)的個(gè)數(shù)來(lái)確定哪個(gè)值對(duì)應(yīng)的是哪個(gè)參數(shù)了,這非常容易出錯(cuò)。對(duì)于不熟悉COM的人,你可以想象一下從前主流語(yǔ)言不支持函數(shù)重載時(shí)的情景,那是一樣的感覺(jué)。由于包含可選參數(shù)的函數(shù)和一般的函數(shù)沒(méi)有區(qū)別,因此可以很好的解決這個(gè)問(wèn)題。

  除了COM之外,C#團(tuán)隊(duì)還利用C# 4作為晚綁定的途徑來(lái)支持DLR。事實(shí)上,這才是可選參數(shù)真正的目的,其他都是附帶的便利。由于動(dòng)態(tài)語(yǔ)言沒(méi)有顯式的類(lèi)型聲明,無(wú)法基于參數(shù)類(lèi)型進(jìn)行函數(shù)重載,因此可選參數(shù)是非常必要的。

  隨著多核、多處理器計(jì)算機(jī)的增長(zhǎng),對(duì)于同步與并發(fā)的討論也越來(lái)越多。只讀數(shù)據(jù)類(lèi)型以及如何定義它們成為了一個(gè)普遍的話(huà)題。如果類(lèi)型中的每個(gè)字段都需要被設(shè)置,那么標(biāo)準(zhǔn)的構(gòu)造函數(shù)就可以解決問(wèn)題。但如果類(lèi)型中的大部分字段都是可選的,就比較麻煩了。重載構(gòu)造函數(shù)可以解決一部分問(wèn)題,而對(duì)于使用Java或者舊版本C#的人來(lái)說(shuō),他們可能會(huì)更傾向于使用Builder模式。但如果有了可選參數(shù),只需要一個(gè)構(gòu)造函數(shù)就可以解決問(wèn)題了。ASP.NET MVC 2中的Controller現(xiàn)在可以為query string參數(shù)設(shè)置默認(rèn)值了。雖然你也可以使用attribute來(lái)設(shè)置,但可選參數(shù)是最簡(jiǎn)潔的辦法。

  微軟為ASP.NET MVC推出的新視圖引擎Razor,在helper方法中使用了可選參數(shù)。這讓helper可以包含更多選項(xiàng)的同時(shí),也支持自說(shuō)明的編碼風(fēng)格。此外,Razor還會(huì)自動(dòng)將表達(dá)式轉(zhuǎn)換為委托,而不需要使用lambda或匿名委托的語(yǔ)法。

  還有一些我們永遠(yuǎn)都不希望使用可選參數(shù)的地方。CLS定義了CLR的一個(gè)子集,所有.NET語(yǔ)言都要支持這個(gè)子集。CLS就明確定義,不可以依賴(lài)可選參數(shù)。這意味著可選參數(shù)將不會(huì)出現(xiàn)在BCL中,而且可能也不會(huì)出現(xiàn)在今后所有.NET Framework包含的類(lèi)庫(kù)中。但對(duì)于CodePlex上的非官方類(lèi)庫(kù)來(lái)說(shuō),這條規(guī)則不需要嚴(yán)格遵守。

  查看英文原文:Optional Parameters Are Gaining Ground in .NET

NET技術(shù)可選參數(shù)在.NET中全面開(kāi)花,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美一区2区三区3区公司 | 国产精品99精品久久免费 | 欧美日韩国产精品一区 | 久久久男人的天堂 | 久久精品免费 | 性色的免费视频 | 夜夜艹 | 中文字幕在线观看视频一区 | 成人影院网站ww555久久精品 | 亚洲一区在线播放 | 国产不卡一区在线观看 | 中文字幕亚洲精品 | 人人草人人干 | 老外几下就让我高潮了 | 欧美日韩在线一区二区 | 日韩欧美黄色 | 成人在线精品视频 | av影音| www.国产精| 欧美日韩在线成人 | 国产综合在线视频 | 国产成人久久精品一区二区三区 | 成人1区2区 | 日韩伦理一区二区 | 欧美亚洲另类丝袜综合网动图 | 欧美一区免费 | 精品欧美视频 | 成人无遮挡毛片免费看 | 伊人久久一区二区 | 777毛片| 日屁视频| 午夜精品视频一区 | 中文字幕 在线观看 | 亚洲欧洲一区 | 亚洲视频中文字幕 | 第一区在线观看免费国语入口 | 91精品一区 | 久久国产美女视频 | 亚洲国产小视频 | 综合激情网| 久久高清国产视频 |