Java高級(jí)程序設(shè)計(jì)實(shí)戰(zhàn)教程第一章-Java編碼規(guī)范_第1頁(yè)
Java高級(jí)程序設(shè)計(jì)實(shí)戰(zhàn)教程第一章-Java編碼規(guī)范_第2頁(yè)
Java高級(jí)程序設(shè)計(jì)實(shí)戰(zhàn)教程第一章-Java編碼規(guī)范_第3頁(yè)
Java高級(jí)程序設(shè)計(jì)實(shí)戰(zhàn)教程第一章-Java編碼規(guī)范_第4頁(yè)
Java高級(jí)程序設(shè)計(jì)實(shí)戰(zhàn)教程第一章-Java編碼規(guī)范_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Java高級(jí)程序設(shè)計(jì)第1章 Java編碼規(guī)范1.1 應(yīng)用場(chǎng)景1.2 相關(guān)知識(shí)1.3 任務(wù)實(shí)施1.4 拓展知識(shí)1.5 拓展訓(xùn)練1.6課后小結(jié)1.1 應(yīng)用場(chǎng)景 一個(gè)大型的軟件項(xiàng)目是由一個(gè)團(tuán)隊(duì)來(lái)完成的,每個(gè)程序員在給包、類、 變量、方法取名的時(shí)候,如果根本沒有一點(diǎn)約定,只是隨心所欲,可能會(huì)帶來(lái)一系列問題。 編碼規(guī)范是程序編碼所要遵循的規(guī)則,保證代碼的正確性、穩(wěn)定性、可讀性。規(guī)范編碼有以下作用。一、規(guī)范的代碼可以促進(jìn)團(tuán)隊(duì)合作二、規(guī)范的代碼可以減少bug處理三、規(guī)范的代碼可以降低維護(hù)成本四、規(guī)范的代碼有助于代碼審查五、養(yǎng)成代碼規(guī)范的習(xí)慣,有助于程序員自身的成長(zhǎng)1.2 相關(guān)知識(shí)1.2.1 文件后綴名1.2

2、.2 源文件樣式約定1.2.3 注釋規(guī)范1.2.4 命名規(guī)范1.2.1 文件后綴名表1-1 Java程序使用的文件后綴名 文件類別文件后綴名Java源文件.javaJava字節(jié)碼文件.class其中兩者最本質(zhì)的區(qū)別在于,.Java文件是供虛擬機(jī)運(yùn)行時(shí)執(zhí)行的文件,而.class文件可以讓你在任何一臺(tái)安裝了Java虛擬機(jī)的機(jī)器上運(yùn)行。1.2.2 源文件樣式約定Java源文件必須按順序由以下3部分組成。1、版權(quán)信息。2、包和引入語(yǔ)句。3、類和接口聲明。1. 版權(quán)信息版權(quán)和版本信息必須在Java文件的開頭,其他不需要出現(xiàn)在javadoc的信息也可以包含在這里。2. 包和引入語(yǔ)句package 行要在i

3、mport行之前,import 中標(biāo)準(zhǔn)的包名要在本地的包名之前,而且按照字母順序排列。如果 import 行中包含了同一個(gè)包中的不同子目錄,則應(yīng)該用 * 來(lái)處理。3. 類和接口聲明每個(gè)Java源文件都包含一個(gè)單一的公共類或接口。1.2.3 注釋規(guī)范1.注釋編寫的原則(1)注釋形式統(tǒng)一。在整個(gè)應(yīng)用程序中,使用具有一致的標(biāo)點(diǎn)和結(jié)構(gòu)的樣式來(lái)構(gòu)造注釋。如果在其他項(xiàng)目中發(fā)現(xiàn)它們的注釋規(guī)范與這份文檔不同,按照這份規(guī)范寫代碼,不要試圖在既成的規(guī)范系統(tǒng)中引入新的規(guī)范。(2)注釋內(nèi)容準(zhǔn)確簡(jiǎn)潔。內(nèi)容要簡(jiǎn)單、明了、含義準(zhǔn)確,防止注釋的多義性,錯(cuò)誤的注釋不但無(wú)益反而有害。2.注釋類型的基本劃分(1)基本注釋必須要添加

4、,包括以下幾種: 1、類(接口)的注釋; 2、構(gòu)造函數(shù)的注釋; 3、方法的注釋; 4、全局變量的注釋; 5、字段/屬性的注釋;簡(jiǎn)單的代碼做簡(jiǎn)單注釋,注釋內(nèi)容不大于10個(gè)字即可,另外,持久化對(duì)象或VO對(duì)象的getter、setter方法不需加注釋。(2)特殊必加的注釋包括以下幾種:1、典型算法必須有注釋。2、在代碼不明晰處必須有注釋。3、在代碼修改處加上修改標(biāo)識(shí)的注釋。4、在循環(huán)和邏輯分支組成的代碼中加注釋。5、為他人提供的接口必須加詳細(xì)注釋。具體的注釋格式自行定義,要求注釋內(nèi)容準(zhǔn)確簡(jiǎn)潔。3.注釋的格式(1)單行(single-line)注釋格式為“/”。(2)塊(block)注釋格式為“/*/

5、”。(3)文檔注釋格式為“/*/”。(4)Javadoc注釋標(biāo)簽語(yǔ)法如下:author 對(duì)類的說明,標(biāo)明開發(fā)該類模塊的作者;version 對(duì)類的說明,標(biāo)明該類模塊的版本;see 對(duì)類、屬性、方法的說明,參考轉(zhuǎn)向,也就是相關(guān)主題;param 對(duì)方法的說明,對(duì)方法中某參數(shù)的說明;return 對(duì)方法的說明,對(duì)方法返回值的說明;exception 對(duì)方法的說明,對(duì)方法可能拋出的異常進(jìn)行說明。1.2.4 命名規(guī)范命名指系統(tǒng)中對(duì)包名、目錄(類名)、方法、常量、變量等標(biāo)識(shí)符的命名。標(biāo)識(shí)符的命名力求做到統(tǒng)一、達(dá)意、簡(jiǎn)潔,遵循駝峰法則。統(tǒng)一是指對(duì)于同一個(gè)概念,在程序中用同一種表示方法。例如對(duì)于供應(yīng)商,既可以

6、用supplier,也可以用provider,但是我們只能選定一個(gè)使用,至少在一個(gè)Java項(xiàng)目中保持統(tǒng)一。達(dá)意是指標(biāo)識(shí)符能準(zhǔn)確地表達(dá)出它所代表的意義,如newSupplier, OrderPaymentGatewayService等;而 supplier1, service2,idtts等則不是好的命名方式。簡(jiǎn)潔是指,在統(tǒng)一和達(dá)意的前提下,用盡量少的標(biāo)識(shí)符。如果不能達(dá)意,寧愿不要太簡(jiǎn)潔。例如,theOrderNameOfTheTargetSupplierWhichIsTransfered 太長(zhǎng),transferedTargetSupplierOrderName則較好,但是transTgtSpl

7、OrdNm就不好了。省略元音的縮寫方式不要使用,我們的英語(yǔ)往往還沒有好到看得懂奇怪的縮寫。用駝峰法則是指單詞之間不使用特殊符號(hào)分割,而是通過首字母大寫來(lái)分割。例如推薦用 SupplierName, addNewContract,而不是supplier_name, add_new_contract。1.3 任務(wù)實(shí)施1.3.1 任務(wù)一 計(jì)算員工的月工資(1)任務(wù)需求某公司分為多個(gè)部門,每個(gè)部門有一個(gè)經(jīng)理和多個(gè)員工,每個(gè)員工根據(jù)職稱發(fā)基本工資。員工的工資按基本工資、日加班工資、日缺勤工資等組成。具體需求如下所示(1)員工的基本信息,部門、職務(wù)、職稱以及工資記錄等信息。(2)能記錄員工的每一個(gè)職稱信息

8、,并授予相應(yīng)的職稱,系統(tǒng)在 計(jì)算員工工資的時(shí)候選取職稱對(duì)應(yīng)的最高職稱津貼。(2)任務(wù)分析問題域中涉及多個(gè)類,職員類Staffer,經(jīng)理類Manager,測(cè)試類TestEmployee。Staffer類:通過此類封裝定義計(jì)算員工基本工資方法Manager類:通過此類封裝定義計(jì)算員工基本工資方法TestEmployee類:調(diào)用方法并實(shí)現(xiàn)結(jié)果輸出1.4 拓展知識(shí)相對(duì)于之前所提到的一些基本的編程需要注意的慣例,其他慣例(Miscellaneous Practices)也是非常重要的,下面就列出相對(duì)應(yīng)的慣例:1.每次保存的時(shí)候,都讓你的代碼是最美的2. 使用log而不是System.out.printl

9、n()3. 每個(gè)if while for等語(yǔ)句,都不要省略大括號(hào)4. 善用TODO5. 在需要留空的地方放一個(gè)空語(yǔ)句或注釋6. 不要再對(duì)boolean值做true false判斷7. 減少代碼嵌套層次1.5 拓展訓(xùn)練 良好的編碼習(xí)慣可以大大提高可讀性以及編碼效率。請(qǐng)讀者從一開始就養(yǎng)成一個(gè)良好的編碼習(xí)慣。通過以下校驗(yàn)郵件地址方法模板展示較為規(guī)范的編碼格式:1.6 課后小結(jié)1.規(guī)范需要平時(shí)編碼過程中注意,是一個(gè)慢慢養(yǎng)成的好習(xí)慣。2.命名規(guī)范。所有的標(biāo)識(shí)符只能用英文字母,數(shù)字,下劃線,并采用駝峰標(biāo)識(shí)。3.注釋規(guī)范。注釋有:?jiǎn)涡凶⑨?“/”, 多行注釋 “/*.*/”, 文檔注釋 “/*.*/”。4.

10、排版規(guī)范。代碼應(yīng)避免一行長(zhǎng)度超過60個(gè)字符。5.聲明規(guī)范。一行聲明一個(gè)變量,只在代碼塊的開始處聲明變量。6.語(yǔ)句規(guī)范。一條語(yǔ)句占用一行。7.編程規(guī)范。用于設(shè)置的方法前綴必須是set;用于檢索一個(gè)布爾類型的方法前綴必須是is,而用于檢索其他方法前綴必須是get。程序中應(yīng)盡可能少使用數(shù)字(或字符),盡可能定義靜態(tài)變量來(lái)說明該數(shù)字(或字符)的含義。1.7 課后習(xí)題 1. 相對(duì)獨(dú)立的程序塊之間、變量說明之后必須加_。2. 類注釋部分,描述部分說明該類或者接口的功能、作用、使用方法和注意事項(xiàng),每次修改后增加作者、新版本號(hào)和當(dāng)天的日期,since _,deprecated 表示_。3. 比較操作符,賦值操

11、作符=、+=,算術(shù)操作符+、%,邏輯操作符&、&,位域操作符、等雙目操作符的前后加_。4. Java中的注釋有三種形式: 文檔注釋 、 多行注釋 和_。5. 方法的文檔中,塊標(biāo)記param用于說明_的含義,return用于說明_1.下列錯(cuò)誤使用異常的做法是_。A.在程序中使用異常處理還是使用錯(cuò)誤返回碼處理,根據(jù)是否有利于程序結(jié)構(gòu)來(lái)確定,并且異常和錯(cuò)誤碼不應(yīng)該混合使用,推薦使用異常。B.一個(gè)方法不應(yīng)拋出太多類型的異常。throws/exception子句標(biāo)明的異常最好不要超過三個(gè)。C.異常捕獲盡量不要直接catch(Exceptionex),應(yīng)該把異常細(xì)分處理。D.程序內(nèi)拋出的異常本身就可說明異常的類型、拋出條件,可不填寫詳細(xì)的描述信息。捕獲異常后用exception.toS

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論