閑聊Visual Studio類設(shè)計(jì)器
在向大家詳細(xì)介紹Visual Studio類設(shè)計(jì)器之前,首先讓大家了解下Visual Studio類,在之前的指導(dǎo)中,在應(yīng)用程序設(shè)計(jì)器中確定的解決方案結(jié)構(gòu)-做為一個(gè)項(xiàng)目-在你通過Visual Studio類設(shè)計(jì)器中設(shè)計(jì)的類的應(yīng)用程序定義能夠被定位,然后全面介紹Visual Studio類設(shè)計(jì)器。在之后的指導(dǎo)中,類設(shè)計(jì)使用Visual Studio類設(shè)計(jì)器能夠變?yōu)橥ㄟ^使用應(yīng)用程序設(shè)計(jì)器設(shè)計(jì)的程序服務(wù)提供的參數(shù)或返回類型。這聽起來像雞和雞蛋的關(guān)系,但你可以使用標(biāo)準(zhǔn)語言類型(如double, int和string)設(shè)計(jì)應(yīng)用程序服務(wù),并且之后可以翻新適當(dāng)?shù)脑O(shè)計(jì)類;或者你能夠設(shè)計(jì)類最初做為一個(gè)標(biāo)準(zhǔn)獨(dú)立的類庫而優(yōu)先于應(yīng)用程序模型。在本文中,我將演示這些方法。
#T#在你獲得錯(cuò)誤的想法前,讓我強(qiáng)調(diào)我描述的應(yīng)用程序設(shè)計(jì)器和Visual Studio類設(shè)計(jì)器的相互關(guān)系。完全在你的程序中使用Visual Studio類設(shè)計(jì)器不是必需的,也不是很完美的。事實(shí)上,如果你不運(yùn)行Visual Studio 2005 Team Architect Edition,對(duì)你只是可選的。
這個(gè)設(shè)計(jì)器被命名為Visual Studio類設(shè)計(jì)器,因?yàn)橹饕挥糜谠O(shè)計(jì)類庫和API。這個(gè)名字與統(tǒng)一建模語言(UML)術(shù)語是一致的。但是,類聲明僅是在類圖表,枚舉,構(gòu)造,接口和委派中能夠被聲明類型中的一個(gè)。
在這篇文章中,我將經(jīng)常討論托拽類到類圖中,刪除類等。做為一般規(guī)則,無論何時(shí)我都使用術(shù)語類,對(duì)類,接口,枚舉,委派或構(gòu)造而言能夠很快被記住。什么地方不是這種情況,我將特別指出。
首先,我將為我選擇的區(qū)域提供一個(gè)分析(類)模型。我將通過展開它到設(shè)計(jì)模型中做為一個(gè)執(zhí)行的基本,來定位這個(gè)模型中的一些限制。最終設(shè)計(jì)模型是獨(dú)立的,而不會(huì)建立一個(gè)API,因?yàn)閷?duì)功能而言它事實(shí)上不會(huì)做任何事,因此我將為API自身設(shè)計(jì)一個(gè)附加的類。最后,我將在這篇文章中關(guān)聯(lián)這些工作以及在我之前的應(yīng)用程序設(shè)計(jì)器文章中設(shè)想的應(yīng)用程序設(shè)計(jì)。
無論在哪我演示的代碼都相當(dāng)于圖示的類,代碼將會(huì)使用C#符號(hào)來聲明。因?yàn)?NET設(shè)計(jì)的風(fēng)格無論你選擇哪種語言都十分漂亮,因此我使用的示例的簡單代碼即使你使用Visual Basic .NET 程序也可以。
事實(shí)上,我能夠通過在Visual Basic中在我提示你建立一個(gè)C#類庫時(shí)建立一個(gè)VB類庫,來重演我的步驟。你注意僅有的不同是一些細(xì)小的技術(shù)不同點(diǎn)反映了你使用語言的不同。不像 UML一體適用的方法,在你使用Visual Basic類時(shí)使用Visual Basic術(shù)語(像公共的,友好的),在使用C#類時(shí),Visual Studio類設(shè)計(jì)器使用C#術(shù)語 (像公共的,受保護(hù)的)。