程序代碼簡(jiǎn)要規(guī)范

程序代碼簡(jiǎn)要規(guī)范

ID:36384175

大?。?7.00 KB

頁(yè)數(shù):8頁(yè)

時(shí)間:2019-05-10

程序代碼簡(jiǎn)要規(guī)范_第1頁(yè)
程序代碼簡(jiǎn)要規(guī)范_第2頁(yè)
程序代碼簡(jiǎn)要規(guī)范_第3頁(yè)
程序代碼簡(jiǎn)要規(guī)范_第4頁(yè)
程序代碼簡(jiǎn)要規(guī)范_第5頁(yè)
資源描述:

《程序代碼簡(jiǎn)要規(guī)范》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)

1、程序代碼簡(jiǎn)要規(guī)范第一章程序代碼規(guī)范程序代碼規(guī)范旨在為.Net、Java、Flex等常見(jiàn)程序開(kāi)發(fā)技術(shù)的代碼提供通用的規(guī)范,約束程序代碼中關(guān)鍵和通用的部分,以方便代碼的復(fù)用和后期的維護(hù)。1.1包命名(命名空間)要求:格式為:com.emapping.應(yīng)用名稱(chēng).……;對(duì)于第三方的代碼,如果有改動(dòng),也需采用此命名。例如:防偽項(xiàng)目Java包:com.emapping.antifake.……;防偽項(xiàng)目Net命名空間:com.emapping.antifake.……;防偽項(xiàng)目Flex包:com.emapping.antifake.……。1.2類(lèi)、方法和變量命名要求:使用英文單詞

2、組合進(jìn)行命名,并且相鄰的單詞首字母大寫(xiě)(即駝峰命名規(guī)則);全局變量或常量所有字母大寫(xiě)命名。例如:類(lèi)UserService,方法getUserInfo(),全局變量或常量COUNT。注意:1,不能使用中文漢字命名;2,不能使用漢語(yǔ)拼音命名;3,要使用有實(shí)際意義的英文單詞。1.3頁(yè)面(Jsp

3、Asp.net)、樣式和腳本命名要求:使用英文單詞組合進(jìn)行命名,并且全部小寫(xiě)。樣式和腳本一般要求保存在單獨(dú)的目錄中,并且目錄和文件名稱(chēng)全為小寫(xiě)英文。例如:useredit.jspuserjsuser.js1.4代碼冗余必須去掉所有未使用的注釋掉的代碼,以及頁(yè)面中未使用的Ja

4、vascript代碼、樣式代碼、html元素。81.1代碼復(fù)用原則在代碼中避免重復(fù)的代碼,需將重復(fù)的代碼重構(gòu)成可復(fù)用的函數(shù)。當(dāng)一個(gè)復(fù)雜函數(shù)中代碼量超過(guò)了100行時(shí),需拆分成多個(gè)可復(fù)用的函數(shù),每個(gè)函數(shù)的代碼量控制在100行以?xún)?nèi)。當(dāng)一個(gè)復(fù)雜類(lèi)中代碼量超過(guò)了2000行時(shí),需拆分成多個(gè)類(lèi),每個(gè)類(lèi)的代碼量控制在2000行以?xún)?nèi)。1.2分層與命名(參考)本部分可參考使用,代碼中有此層需依此命名,無(wú)此層可自行命名,但包命名(命名空間)不可變化;對(duì)于接口類(lèi)和實(shí)現(xiàn)類(lèi)命名格式,.net和flex可依據(jù)通用命名習(xí)慣,不依此要求。1.2.1控制層命名:格式:com.emapping.應(yīng)用名

5、稱(chēng).action.模塊名例如:com.emapping.antifake.action.UserAction1.2.2業(yè)務(wù)層命名:接口格式:com.emapping.應(yīng)用名稱(chēng).service.模塊名例如:com.emapping.antifake.service.UserService實(shí)現(xiàn)類(lèi)格式:com.emapping.應(yīng)用名稱(chēng).service.impl.模塊名例如:com.emapping.antifake.service.impl.UserServiceImpl1.2.3持久層命名:接口格式:com.emapping.應(yīng)用名稱(chēng).dao.模塊名例如:com.e

6、mapping.antifake.dao.UserDAO實(shí)現(xiàn)類(lèi)格式:com.emapping.應(yīng)用名稱(chēng).service.impl.模塊名例如:com.emapping.antifake.dao.impl.UserDAOImpl1.2.4持久化對(duì)象命名:格式:com.emapping.應(yīng)用名稱(chēng).model.實(shí)體對(duì)象名例如:com.emapping.antifake.model.UserInfo81.1.1代理層命名:格式:com.emapping.應(yīng)用名稱(chēng).delegate.模塊名例如:com.emapping.antifake.delegate.UserDeleg

7、ate一般情況下不要求使用代理層,但是如果使用第三方的組件是,不能在代碼中直接調(diào)用第三方的組件包,必須使用專(zhuān)門(mén)的代理類(lèi)進(jìn)行包裝。1.2注釋?zhuān)?.所有類(lèi)、接口、非私有方法必須詳細(xì)注釋?zhuān)?.關(guān)鍵算法中使用的變量必須詳細(xì)注釋?zhuān)詈冒{(diào)用的demo;3.代碼更新時(shí),注釋必須同時(shí)更新,更新內(nèi)容包括修改人員、修改時(shí)間、修改內(nèi)容。當(dāng)方法(或類(lèi))修改的量達(dá)到40%時(shí),必需重構(gòu);4.注釋的量要求達(dá)到20%以上;5.盡量使用中文注釋?zhuān)谴颂幱糜⑽目梢跃珳?zhǔn)的表達(dá)意思。1.3異常:1.所有異常不能拋棄;2.所有異常需記錄日志,不能在控制臺(tái)輸出;3.充分利用finally釋放占用資源;

8、4.所有自定異常需繼承自com.emapping.common.exception.GeneralFailureException1.4數(shù)據(jù)有效性:驗(yàn)證網(wǎng)頁(yè)數(shù)據(jù)有效性,需先在前臺(tái)腳本中驗(yàn)證,然后在服務(wù)器上進(jìn)行后臺(tái)驗(yàn)證;1.5測(cè)試:1.單元測(cè)試要求達(dá)到語(yǔ)句覆蓋。2.單元測(cè)試要跟蹤每一條語(yǔ)句,并觀(guān)察數(shù)據(jù)流與變量的變化。3.功能類(lèi)都應(yīng)該使用JUnit進(jìn)行單元測(cè)試。8第一章JavaScript腳本和樣式規(guī)范1.1總則1.1.1文件命名JavaScript文件命名規(guī)則為:英文小寫(xiě)目錄+英文小寫(xiě)文件名稱(chēng)+.js樣式文件命名規(guī)則為:英文小寫(xiě)目錄+英文小寫(xiě)文件名稱(chēng)+.css例如:

9、js/fi

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。