版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、水利水電工程XXXXX輔助決策支持系統(tǒng)團(tuán)隊(duì)開(kāi)發(fā)規(guī)范XXXXX 設(shè)計(jì)有限公司二XXX年十二月文檔信息:文檔名稱水利水電工程XXXXX輔助決策支持系統(tǒng)團(tuán)隊(duì)開(kāi)發(fā)規(guī)范描述該文檔詳細(xì)定義了團(tuán)隊(duì)開(kāi)發(fā)的角色及職責(zé)、 項(xiàng)目開(kāi)發(fā) 流程、開(kāi)發(fā)過(guò)程控制的約定、協(xié)作開(kāi)發(fā)的約定、代碼 版本控制、交流機(jī)制等負(fù)責(zé)人XX狀態(tài)最終版文檔變更歷史:時(shí)間修改人章節(jié)描述2008-8-29XXX所有章節(jié)創(chuàng)建文檔初稿2008-12-10XXX所有章節(jié)修改文檔名稱:團(tuán)隊(duì)開(kāi)發(fā)規(guī).doc審核結(jié)果:審核人意見(jiàn)簽名檔1團(tuán)隊(duì)組成4.1.2 枚舉和結(jié)構(gòu)121.1產(chǎn)品管理1.1.2項(xiàng)目管理2.1.3開(kāi)發(fā)3.1.4測(cè)試4.1.5角色共享5.1.6開(kāi)發(fā)小組
2、5.1.7專家小組6.2開(kāi)發(fā)流程2.1達(dá)成共識(shí)2.2完成項(xiàng)目計(jì)劃8.2.3完成功能2.4穩(wěn)定與發(fā)布8.3代碼管理103.1 編碼規(guī)范103.2版本管理103.2.1 概述103.2.2代碼管理104附錄:系統(tǒng)開(kāi)發(fā)編碼規(guī)范114.1 類型級(jí)單位的命名114.1.1 類4.1.3委派類型124.1.4接口124.1.5模塊134.2方法和屬性的命名134.2.1方法134.2.2屬性134.2.3事件134.3變量和常數(shù)144.4前綴154.4.1 對(duì)象154.4.2 變量/常量的范圍154.5標(biāo)簽4.6名字空間4.7格式化.塊4.7.1161717174.7.2縮進(jìn)174.7.3174.8注釋1
3、84.8.1注釋規(guī)范184.8.2類(包括Form等)、模塊、組件、控件194.8.3方法、函數(shù)、事件與屬性194.9完整性204.10安全性201團(tuán)隊(duì)組成我們的整個(gè)軟件開(kāi)發(fā)團(tuán)隊(duì)由4種角色組成,分別為:?產(chǎn)品管理(Product Managemen)? 項(xiàng)目管理(Program Managemen)?開(kāi)發(fā)人員(Development)?測(cè)試人員(Test)各角色在團(tuán)隊(duì)的地位相當(dāng),各司其職。各個(gè)角色的具體目標(biāo)、職能以及責(zé)任 在以下的小節(jié)中進(jìn)行詳述。1.1 產(chǎn)品管理(1)目標(biāo)滿足客戶需求。產(chǎn)品管理的目標(biāo)就是滿足客戶需求。 一個(gè)成功的項(xiàng)目必須要能夠滿足客戶和 用戶的要求。即使項(xiàng)目達(dá)到了預(yù)算和時(shí)間的目
4、標(biāo), 只要未能滿足客戶需求,那這 就是一個(gè)失敗的項(xiàng)目。首先必須認(rèn)清和理解客戶。有時(shí),使用方和投資方的目標(biāo) 需求并不完全相同,因此就需要清晰地區(qū)別和分析所有的需求。(2)職能?市場(chǎng)?推動(dòng)市場(chǎng)和公關(guān),以對(duì)目標(biāo)客戶發(fā)生效用?突出產(chǎn)品與其他競(jìng)爭(zhēng)對(duì)手的區(qū)別性,以利于競(jìng)爭(zhēng) ?分發(fā)解決方案,以便用戶能夠容易地獲得?為用戶提供支持,以使其無(wú)論在購(gòu)買還是使用過(guò)程中都留下正面的印象?業(yè)務(wù)價(jià)值?定義并維護(hù)項(xiàng)目的業(yè)務(wù)正確性?定義并衡量業(yè)務(wù)價(jià)值的實(shí)現(xiàn)和評(píng)價(jià)?發(fā)展客戶?推動(dòng)項(xiàng)目和解決方案的遠(yuǎn)景目標(biāo) ?負(fù)責(zé)客戶期望值和溝通?產(chǎn)品計(jì)劃?收集、分析客戶和業(yè)務(wù)需求,并區(qū)分其優(yōu)先級(jí) ?執(zhí)行市場(chǎng)調(diào)查、市場(chǎng)開(kāi)拓和競(jìng)爭(zhēng)對(duì)手分析 ?確定業(yè)
5、務(wù)和成功的標(biāo)準(zhǔn) ?識(shí)別多目標(biāo)的發(fā)布計(jì)劃1.2 項(xiàng)目管理(1)目標(biāo)在項(xiàng)目的約束條件下完成解決方案。整個(gè)團(tuán)隊(duì)的一個(gè)主要目標(biāo)就是在項(xiàng)目的約束條件下完成項(xiàng)目。項(xiàng)目的約束條 件包括預(yù)算和進(jìn)度等。大部分項(xiàng)目會(huì)根據(jù)時(shí)間和資金的使用來(lái)衡量項(xiàng)目的結(jié)果。為了實(shí)現(xiàn)這個(gè)目標(biāo),項(xiàng)目管理負(fù)責(zé)并推動(dòng)進(jìn)度表、功能集和預(yù)算資金。他必須保 證能夠在正確的時(shí)間發(fā)布正確的項(xiàng)目或產(chǎn)品,保證正確理解了項(xiàng)目投資方的期 望,并自始至終貫穿于項(xiàng)目執(zhí)行過(guò)程中。(2)職能?項(xiàng)目管理?跟蹤和管理預(yù)算資金 ?管理控制進(jìn)度表 ?推動(dòng)風(fēng)險(xiǎn)管理流程 ?加強(qiáng)團(tuán)隊(duì)溝通和協(xié)調(diào) ?跟蹤進(jìn)度和報(bào)告項(xiàng)目狀態(tài) ?管理資源分配?解決方案構(gòu)建?推動(dòng)整體項(xiàng)目設(shè)計(jì) ?負(fù)責(zé)功能規(guī)
6、范 ?負(fù)責(zé)解決方案范圍和重要決定?流程控制?推動(dòng)流程質(zhì)量控制 ?定義并推薦可改進(jìn)處?管理服務(wù)?實(shí)現(xiàn)項(xiàng)目的管理流程并提供支持 ?提供管理服務(wù)以保證高效的團(tuán)隊(duì)運(yùn)作1.3 開(kāi)發(fā)目標(biāo)按照功能規(guī)范說(shuō)明、軟件開(kāi)發(fā)需求分析報(bào)告和總體結(jié)構(gòu)設(shè)計(jì)的要求 進(jìn)行開(kāi)發(fā)。功能規(guī)范說(shuō)明詳細(xì)描述了整個(gè)團(tuán)隊(duì)將要提供給客戶的交付物。對(duì)整個(gè)團(tuán)隊(duì)來(lái)說(shuō),應(yīng)該盡可能精確地按照功能規(guī)范說(shuō)明來(lái)實(shí)現(xiàn)整個(gè)項(xiàng)目,因?yàn)楣δ芤?guī)范說(shuō)明可 以看成是整個(gè)團(tuán)隊(duì)和客戶之間所達(dá)成的共識(shí)。 開(kāi)發(fā)人員必須按照客戶需求和功能 規(guī)范說(shuō)明來(lái)構(gòu)建整個(gè)解決方案。同時(shí),開(kāi)發(fā)人員還需要為整個(gè)團(tuán)隊(duì)提供技術(shù)方面 的咨詢,這樣在設(shè)計(jì)和技術(shù)選擇時(shí)可以盡量減少開(kāi)發(fā)風(fēng)險(xiǎn)。開(kāi)發(fā)人員提供較低層
7、次的功能設(shè)計(jì),并預(yù)估完成設(shè)計(jì)所需的時(shí)間。(2)職能?技術(shù)咨詢?為團(tuán)隊(duì)提供技術(shù)咨詢服務(wù) ?評(píng)估并驗(yàn)證所用技術(shù) ?積極參與功能規(guī)范說(shuō)明的創(chuàng)建和審核 ?定義開(kāi)發(fā)標(biāo)準(zhǔn)?實(shí)現(xiàn)架構(gòu)和設(shè)計(jì)?提供針對(duì)解決方案的應(yīng)用程序、數(shù)據(jù)和技術(shù)細(xì)節(jié),以便將企業(yè)架構(gòu)映射到解決方案架構(gòu)的實(shí)現(xiàn)上?負(fù)責(zé)并實(shí)現(xiàn)解決方案的邏輯和物理設(shè)計(jì)?應(yīng)用程序開(kāi)發(fā)?根據(jù)設(shè)計(jì)規(guī)范編寫代碼以實(shí)現(xiàn)功能 ?在開(kāi)發(fā)過(guò)程中進(jìn)行代碼審核,并共享知識(shí)和經(jīng)驗(yàn) ?在測(cè)試人員的幫助下,根據(jù)測(cè)試計(jì)劃執(zhí)行單元測(cè)試?架構(gòu)開(kāi)發(fā)?為自動(dòng)安裝開(kāi)發(fā)腳本 ?開(kāi)發(fā)安裝文檔1.4 測(cè)試(1)目標(biāo)在確認(rèn)所有的產(chǎn)品質(zhì)量問(wèn)題都得到妥善處理后,批準(zhǔn)產(chǎn)品發(fā)布。所有的軟件產(chǎn)品在發(fā)布時(shí)都存在著缺陷。最重
8、要的是,在發(fā)布前,必須清楚 地認(rèn)識(shí)和鑒別出這些問(wèn)題,可以以問(wèn)題的形式給出解決方法,或者是給出如何繞 開(kāi)該問(wèn)題的文檔記錄。寧愿對(duì)于已知的問(wèn)題,提供了文檔或解決方法,也不要存 在一些未知的問(wèn)題。因?yàn)檫@些未知的問(wèn)題,可能會(huì)帶來(lái)不可預(yù)知的后果。(2)職能?計(jì)劃測(cè)試?開(kāi)發(fā)測(cè)試方法和計(jì)劃 ?參與設(shè)置質(zhì)量標(biāo)準(zhǔn) ?開(kāi)發(fā)測(cè)試說(shuō)明?測(cè)試?開(kāi)發(fā)并維護(hù)自動(dòng)測(cè)試案例、工具和腳本 ?執(zhí)行測(cè)試,以確定產(chǎn)品開(kāi)發(fā)過(guò)程的狀態(tài) ?負(fù)責(zé)定義構(gòu)造流程?測(cè)試報(bào)告?為團(tuán)隊(duì)提供與產(chǎn)品質(zhì)量相關(guān)的數(shù)據(jù) ?跟蹤所有缺陷,并保證在發(fā)布前得到妥善處理1.5角色共享盡管團(tuán)隊(duì)組成包含了 4種角色,但并不意味著一個(gè)團(tuán)隊(duì)至少需要 4個(gè)成員, 也不意味著一個(gè)人
9、只能承擔(dān)一種角色,重要的是這4種角色必須在一個(gè)團(tuán)隊(duì)中體 現(xiàn)。一般情況下,團(tuán)隊(duì)成員常常共享角色。在一些較小的團(tuán)隊(duì)中,不同的角色只 能進(jìn)行兼任。角色共享有兩條重要原則:是開(kāi)發(fā)組成員不能共享角色。開(kāi)發(fā)人員是項(xiàng)目的構(gòu)建者,他們不應(yīng)該從他們的主任務(wù)中分身。如果對(duì)開(kāi)發(fā)組成員要求額外的角色, 往往會(huì)使得他們無(wú)法按 時(shí)完成進(jìn)度要求。二是不要試圖組合具有一定利益沖突的角色。比如,產(chǎn)品管理和項(xiàng)目管理的利益具有沖突點(diǎn),所以他們的角色不能組合。產(chǎn)品管理注重滿足客戶需求,而項(xiàng) 目管理主要關(guān)心在時(shí)間和預(yù)算的限度內(nèi)完成項(xiàng)目。如果這兩個(gè)角色組合在一起, 那么在需求發(fā)生變更時(shí),可能會(huì)發(fā)生一些情況,諸如沒(méi)有足夠地考慮客戶滿意度
10、而忽略該變更,或者是沒(méi)考慮對(duì)項(xiàng)目的沖擊盲目地接受變更。 讓不同的團(tuán)隊(duì)成員擔(dān)任這樣的角色有助于確保每個(gè)方面得到相當(dāng)?shù)目紤]和重視程度。同樣,這也適 用于組合開(kāi)發(fā)人員和測(cè)試人員。1.6 開(kāi)發(fā)小組開(kāi)發(fā)小組成員組成姓名性別年齡職務(wù)/職稱業(yè)務(wù)專業(yè)本項(xiàng)目分工所在單位1.7專家小組姓名性別年齡職務(wù)/職稱業(yè)務(wù)專業(yè)本項(xiàng)目分工所在單位專家小組負(fù)責(zé)系統(tǒng)開(kāi)發(fā)過(guò)程中重要階段的評(píng)審、導(dǎo)截流技術(shù)問(wèn)題的解答和指導(dǎo)等。主要目標(biāo)是保證系統(tǒng)的理論先進(jìn)性、更好的滿足客戶需求和保障開(kāi)發(fā)質(zhì)量。2開(kāi)發(fā)流程在開(kāi)發(fā)過(guò)程中,采用多里程碑式的過(guò)程模型,如圖1所示。而其中每一個(gè)循環(huán)均包含四個(gè)里程碑。階段3階段2階段1宮鼻時(shí)間圖1多里程碑模型這四個(gè)里程
11、碑組成的循環(huán)放大后如圖 2所示,稱為過(guò)程模型”*圖2過(guò)程模型2.1達(dá)成共識(shí)?基本完成需求調(diào)研和分析(產(chǎn)品管理負(fù)責(zé))確定大方向和長(zhǎng)中短期目標(biāo) 所有角色都參與討論并真正認(rèn)同結(jié)論 產(chǎn)生的文檔?常見(jiàn)用戶情景:覆蓋80%以上功能?前景:言簡(jiǎn)意賅地說(shuō)明大方向,并有激勵(lì)團(tuán)隊(duì)的作用2.2完成項(xiàng)目計(jì)劃編寫詳細(xì)的功能規(guī)范(項(xiàng)目管理)在編程前想清楚所有功能流程,并引導(dǎo)用戶明確需求所有角色都參與審閱功能規(guī)范制訂開(kāi)發(fā)計(jì)劃和進(jìn)度表(開(kāi)發(fā)團(tuán)隊(duì))制訂測(cè)試計(jì)劃和進(jìn)度表(測(cè)試團(tuán)隊(duì))分配資源(人力和預(yù)算)形成項(xiàng)目綜合計(jì)劃和綜合進(jìn)度表2.3完成功能開(kāi)發(fā)人員分別完成自己的功能進(jìn)行版本合理的控制對(duì)每一項(xiàng)可測(cè)試的功能進(jìn)行測(cè)試,無(wú)需等待通過(guò)
12、測(cè)試用例,對(duì)功能進(jìn)行完整和重復(fù)的檢驗(yàn)記錄所有程序問(wèn)題實(shí)現(xiàn)解決缺陷的自動(dòng)流程按照綜合進(jìn)度表不斷檢查進(jìn)度2.4穩(wěn)定與發(fā)布測(cè)試組全面地測(cè)試功能,包括性能和穩(wěn)定性開(kāi)發(fā)組全力配合解決缺陷監(jiān)測(cè)質(zhì)量情況?預(yù)測(cè)發(fā)布日期 ?專家會(huì)診機(jī)制?決定缺陷的優(yōu)先度 ?決定哪些缺陷可以在下個(gè)里程碑或版本中解決 ?決定由誰(shuí)解決某個(gè)缺陷3代碼管理3.1 編碼規(guī)范請(qǐng)參看附錄,系統(tǒng)開(kāi)發(fā)編碼規(guī)范。3.2版本管理3.2.1 概述版本控制有如下好處:?可以獲得連續(xù)的受版本控制的項(xiàng)目,并保存不同版本的區(qū)別以作比較 ?能獲得版本控制工具中保存的任何版本 ?能夠把出錯(cuò)或誤操作的最新版的項(xiàng)目恢復(fù)到正確的歷史版本 ?獲得歷史版本的詳細(xì)信息在開(kāi)發(fā)過(guò)
13、程中,核心程序員對(duì)版本進(jìn)行控制、對(duì)系統(tǒng)源代碼進(jìn)行集中管理, 并做好程序的備份和保密工作。3.2.2代碼管理核心程序員根據(jù)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)和詳細(xì)設(shè)計(jì),對(duì)系統(tǒng)實(shí)現(xiàn)的功能進(jìn)行分解,將實(shí)現(xiàn)各功能的小模塊分配給項(xiàng)目組的開(kāi)發(fā)人員,并事先設(shè)計(jì)好各模塊的接口。開(kāi) 發(fā)人員根據(jù)接口要求進(jìn)行編碼。編碼完成后進(jìn)行單元測(cè)試。單元測(cè)試由開(kāi)發(fā)人員完成。單元測(cè)試后開(kāi)發(fā)人員將本部分模塊代碼上交給核心程序員,核心程序員負(fù) 責(zé)加入模塊后的系統(tǒng)測(cè)試。系統(tǒng)的全部代碼由核心程序員管理, 其它開(kāi)發(fā)人員負(fù)責(zé)配合進(jìn)行各模塊的開(kāi) 發(fā)。4附錄:系統(tǒng)開(kāi)發(fā)編碼規(guī)范在開(kāi)發(fā)中保持良好的編碼規(guī)范是十分重要的。程序開(kāi)發(fā)人員應(yīng)該嚴(yán)格遵循系 統(tǒng)開(kāi)發(fā)編碼規(guī)范進(jìn)行編碼。
14、4.1 類型級(jí)單位的命名4.1.1 類在為類(class)命名前首先要知道它是什么,如果通過(guò)類名的提供的線索, 你還是想不起這個(gè)類是什么的話, 那么你的設(shè)計(jì)就還做的不夠好。超過(guò)三個(gè)詞組 成的混合名是容易造成系統(tǒng)各個(gè)實(shí)體間的混淆。對(duì)于派生類的命名應(yīng)該避免帶其 父類名,一個(gè)類的名字只與它自身有關(guān),和它的父類叫什么無(wú)關(guān)。1類命名以Class聲明的類,都必須以名詞或名詞短語(yǔ)命名,使用大寫字母作為詞的 分隔,其他的字母均使用小寫,名字的首字母使用大寫不要使用下劃線(_)。如:Class In dicator當(dāng)類是一個(gè)特性(Attribute)時(shí),以Attribute結(jié)尾,當(dāng)類是一個(gè)異常(Exceptio
15、n) 時(shí),以 Exception結(jié)尾,如:Class ColorSetExce pti onClass CauseExce ptio nAttribute當(dāng)類只需有一個(gè)對(duì)象實(shí)例(全局對(duì)象,比如Application等),必須以Class結(jié)尾,如:Class Scree nClassClass SystemClass當(dāng)類只用于作為其他類的基類,根據(jù)情況,以Base結(jié)尾:MustI nherit Class In dicatorBase如果定義的類是一個(gè)窗體,那么名字的前面或后面必須加Frm。在本系統(tǒng)編碼中,對(duì)于前處理和處理器模塊使用的窗體,在名字的后面加后綴Frm,在后處理模塊中使用的窗體在名字
16、的前面加前綴Frm。如果是Web窗體,必須加后綴PageClass Prin tFrm : In herits Form* Windows 窗體* Web窗體Class Start Page : In herits P age2類庫(kù)命名目前命名空間正在越來(lái)越廣泛的被采用,以避免不同廠商和團(tuán)體類庫(kù)間的類名沖突。當(dāng)未采用命名空間的時(shí)候,為了避免類名沖突,一般的做法是在類名前加上獨(dú)特的前綴,兩個(gè)字符就可以了,當(dāng)然多用一些會(huì)更好。例如:Joh nJoh nso n的數(shù)據(jù)結(jié)構(gòu)類庫(kù)可以用Jj做為前綴,如下:classJjLi nkList4.1.2枚舉和結(jié)構(gòu)同樣必須以名詞或名詞短語(yǔ)命名。最好體現(xiàn)枚舉或結(jié)構(gòu)
17、的特點(diǎn),如:Enum ColorButt ons“以復(fù)數(shù)結(jié)尾,表明這是一個(gè)枚舉Structure CustomerInfoRecord ”以 Record 結(jié)尾,表明這是一個(gè)結(jié)構(gòu)體4.1.3 委派類型普通的委派類型以描述動(dòng)作的名詞命名,以體現(xiàn)委派類型實(shí)例的功能:Delegate Sub DataSeeker (ByVal SeekStri ng As Stri ng)用于事件處理的委派類型,必須以 Eve ntHa ndler結(jié)尾,如:Delegate Sub DataCha ngedEve ntHa ndler (ByVaSe nder As Object, ByVal e AsDataCh
18、a ngedEve ntArgs) 4.1.4 接口與其他類型不同,接口必須要由I作為前綴,并用形容詞命名,突出表現(xiàn)實(shí) 現(xiàn)接口的類將具有什么能力:In terface ISortable4.1.5 模塊模塊不是類型,他的名稱除了必須以名詞命名外,必須加以后綴Module:Module SharedFu nctio nsModule上述所有規(guī)則的共同特點(diǎn)是,每個(gè)組成名稱的詞語(yǔ)都必須是大寫開(kāi)頭,禁止 完全大寫或小寫的名稱。4.2 方法和屬性的命名4.2.1 方法最好采用與類命名一致的規(guī)則,無(wú)論是函數(shù)還是子程序,方法都必須以動(dòng)詞 或動(dòng)詞短語(yǔ)命名。無(wú)需區(qū)分函數(shù)和子程序,也無(wú)需指明返回類型。Sub Op
19、en (ByVal Comma ndStri ng As Stri ng)Fun ction SetC op yNumber (ByVal Cop yNumber As In teger)參數(shù)需要指明ByVal還是ByRef,這一點(diǎn)寫起來(lái)會(huì)讓程序變長(zhǎng),但非常必要。如果沒(méi)有特別情況,都使用ByVal。參數(shù)的命名方法,參考后面 變量的命名方 法”需要重載的方法,一般不寫 Overloads,根據(jù)需要編寫重載方法。4.2.2 屬性原則上字段(Field)是不能公開(kāi)的,要訪問(wèn)字段的值,一般使用屬性。屬性 以簡(jiǎn)潔清晰的名詞命名:Property Concen trati on As Si nglePro
20、perty Customer As CustomerT ypes 4.2.3 事件事件是特殊的屬性,只能在事件處理上下文中使用。命名的原則一般是動(dòng)詞 或動(dòng)詞的分詞,通過(guò)時(shí)態(tài)表明事件發(fā)生的時(shí)間:Event Click As ClickEve ntHa ndlerEvent ColorCha nged As ColorCha ngedEve ntHa ngler4.3變量和常數(shù)常數(shù)以表明常數(shù)意義的名詞命名,一般不區(qū)分常數(shù)的類型:Const DefaultCo ncen trati on As Sin gle=0.01在嚴(yán)格要求的代碼中,常數(shù)以 c_開(kāi)頭,如c_DefaultConeentratio
21、n,但最好不要用它,它會(huì)帶來(lái)輸入困難。普通類型的變量,只要用有意義的名字命名即可, 不可使用簡(jiǎn)稱和無(wú)意義的名稱諸如 A,x1等,下面給出了良好的例子:Dim In dex As In tegerDim NextMo nthEx pen diture As DecimalDim CustomerName As Stri ng不能起太長(zhǎng)的名字,應(yīng)該盡量簡(jiǎn)潔,如下面的例子:Dim VariableUsedToStoreSystemInformation As String ''* 太復(fù)雜了''*正確,簡(jiǎn)單明了錯(cuò)誤,過(guò)于簡(jiǎn)單Dim SystemI nformatio n
22、 As StringDim sys Info As Stri ng特殊情況可以考慮一個(gè)字母的變量:Dim g As Grap hic對(duì)于控件,應(yīng)該指明控件的類型,方法是直接在變量后面加以類名:Friend WithEve nts Next PageButton As Butt on ”* 按鈕Friend WithEve nts ColorChoicer Pan el As Pan el ''* 面版Friend WithEve nts CardFile Open Dialog As File Open Dialog ''* 文件打開(kāi)對(duì) 話框等等,無(wú)需規(guī)定某種類
23、型的變量的前綴,只需把類型寫在后面就行了,試對(duì) 比下列代碼:btnCan cel.Text = &Ca ncelCan celButt on. Text = &Ca ncel顯然后者更能使閱讀者明白變量的類型是一個(gè)按鈕。4.4 前綴4.4.1 對(duì)象1標(biāo)準(zhǔn)對(duì)象名稱 前綴 例子 說(shuō)明System.Array arr arrUsers 用戶集合System.Boolean bln bl nDoesUserExist 用戶是否存在System.Byte byt bytStreamCo ntent 字節(jié)流內(nèi)容 System.Char chr chrKe yP ress 按鍵System.
24、DateTime dte dteCreatedDateTime創(chuàng)建日期 System.Decimal dec decYearlySaleQuota年度銷售額 System.Double dbl dblTotal Price 總金額System .In terger int in tMessages 消息數(shù) System.Object obj objExternalF un ctio n 夕卜部功能 System.Si ngle sng sngFini shRate 完成率 System.Stri ng str strLogi nN ame 登陸名稱System.Exce pti on exc
25、excRet 錯(cuò)誤System.E num enm en mUserState用 戶狀態(tài)Structure stu stuE mp loyees 員工類型System.Data.SqlClie nt.SqlCo nn ection cnn cnn Database數(shù) 據(jù)庫(kù)連接System.Data.SqlClie nt.SqlDataReader sdr sdrUserDat 用戶數(shù)據(jù)讀取器2自定義對(duì)象我們規(guī)定應(yīng)該根據(jù)自定義對(duì)象的名稱來(lái)確定該對(duì)象類型的前綴,例子如下對(duì)象SysSet前綴ss例子ssSafety442變量/常量的范圍根據(jù)變量與常量的生存周期,我們應(yīng)該定義不同的生存周期前綴以示區(qū)別
26、,以便我們清楚該變量/常量的范圍。1類、模塊、組件、控件我們規(guī)定在類、模塊、組件、控件范圍內(nèi),變量的生存周期前綴應(yīng)該添加“m_' (Modu模塊)。例子如下:名稱 前綴 例子 說(shuō)明System.Array m_arr m_arrUsers 用戶集合System.Boolea n m_bln m_bln DoesUserExist 用戶是否存在System.Byte m_byt m_bytStreamCo ntent 字節(jié)流內(nèi)容System.Char m_chr m_chrKe yP ress按鍵System.DateTime m_dte m_dteCreatedDateTime創(chuàng)建日期
27、System.Decimal m_dec m_decYearlySaleQuota年度銷售額System.Double m_dbl m_dblTotal Price 總金額System .In terger m_int m_in tMessages消 息數(shù)System.Object m_obj m_objExter nalF unction 夕卜部功能System.Si ngle m_sng m_sn gFi nishRate完成率System.Stri ng m_str m_strLog inN ame 登陸名稱2過(guò)程、函數(shù)、屬性、事件我們規(guī)定在過(guò)程、函數(shù)、屬性、事件范圍內(nèi),變量的生存周期前
28、綴應(yīng)該添加“o_”w ner私有)。例子如下:名稱 前綴 例子 說(shuō)明System.Array o_arr o_arrUsers 用戶集合System.Boolea n o_bln o_bln DoesUserExist 用戶是否存在System.Byte o_byt o_bytStreamCo nte nt 字節(jié)流內(nèi)容System.Char o_chr o_chrKe yP ress按鍵System.DateTime o_dte o_dteCreatedDateTimy 建日期System.Decimal o_dec o_decYearlySaleQuot奔度銷售額System.Double
29、o_dbl o_dblTotal Price 總金額4.5 標(biāo)簽標(biāo)簽就是用于Goto跳轉(zhuǎn)的代碼標(biāo)識(shí),由于Goto并不推薦使用,所以標(biāo)簽的 使用也比較苛刻。標(biāo)簽必須全部大寫,中間的空格用下劃線_代替,而且應(yīng)該以_ 開(kāi)頭,比如:_A_LABEL_EXAMPLE :如此定義標(biāo)簽是為了與其他代碼元素充分區(qū)別。4.6 名字空間通常,一個(gè)工程使用一個(gè)名字空間,通常不需要用Names pace語(yǔ)句,而是在工程選項(xiàng)的“ Root Names pac中指定,使用根名字空間可以使代碼更加整齊,容易修改,這一點(diǎn)是VB十足的優(yōu)點(diǎn)。名字空間的語(yǔ)法是:公司名產(chǎn)品名.組件名的復(fù)數(shù)如:Names pace COM.NETNa
30、mes pace COM.File.lO.Files隨便起一個(gè)名字空間的名字絕對(duì)不是一個(gè)好主意,一定要遵守上述規(guī)定。4.7 格式化良好的格式化代碼對(duì)我們的瀏覽與維護(hù)有相當(dāng)?shù)暮锰帯?.7.1 塊.NET提供了 #Region.#End Region塊控制。我們應(yīng)該根據(jù)代碼所實(shí)現(xiàn)的功能分類并以塊組織起來(lái)。4.7.2 縮進(jìn)每個(gè)層次直接都應(yīng)該以Tab進(jìn)行縮進(jìn),而不是Space空格鍵)。4.7.3 流每個(gè)方法、函數(shù)、屬性、事件應(yīng)該有且只有一個(gè)入口和一個(gè)出口。如果遇見(jiàn)多層嵌套而需要直接跳出的時(shí)候,請(qǐng)使用局部Boolean或者Integer變量來(lái)標(biāo)示用以多層跳出。如:Private Function TestForReturnO
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年煤礦安全生產(chǎn)法律法規(guī)知識(shí)考試復(fù)習(xí)題庫(kù)及答案
- 委托二手房買賣合同的
- 國(guó)家基本藥物政策目錄及招標(biāo)相關(guān)政策解讀課件
- 二零二五年度車隊(duì)租賃車輛保險(xiǎn)及理賠合同范本3篇
- 2025年度個(gè)人擔(dān)保貸款協(xié)議書(shū)2篇
- 2025年度環(huán)保技術(shù)合資企業(yè)個(gè)人股東股權(quán)轉(zhuǎn)讓協(xié)議書(shū)4篇
- 二零二五年度工業(yè)遺產(chǎn)廠房拆遷補(bǔ)償與文化傳承協(xié)議2篇
- 2025年鋼材貿(mào)易居間代理服務(wù)合同范本
- 二零二五年度旅游景區(qū)景點(diǎn)租賃服務(wù)協(xié)議3篇
- 二零二五年度自動(dòng)化倉(cāng)庫(kù)租賃運(yùn)營(yíng)合同3篇
- 寺院消防安全培訓(xùn)課件
- 比摩阻-管徑-流量計(jì)算公式
- 專題23平拋運(yùn)動(dòng)臨界問(wèn)題相遇問(wèn)題類平拋運(yùn)和斜拋運(yùn)動(dòng)
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、異丙醇和正丁醇檢驗(yàn)
- 五年級(jí)數(shù)學(xué)應(yīng)用題100道
- 西方經(jīng)濟(jì)學(xué)(第二版)完整整套課件(馬工程)
- 高三開(kāi)學(xué)收心班會(huì)課件
- GB/T 33688-2017選煤磁選設(shè)備工藝效果評(píng)定方法
- 科技計(jì)劃項(xiàng)目申報(bào)培訓(xùn)
- 591食堂不合格食品處置制度
- 黑布林繪本 Dad-for-Sale 出售爸爸課件
評(píng)論
0/150
提交評(píng)論