軟件團(tuán)隊(duì)的開(kāi)發(fā)與合作規(guī)范ppt課件_第1頁(yè)
軟件團(tuán)隊(duì)的開(kāi)發(fā)與合作規(guī)范ppt課件_第2頁(yè)
軟件團(tuán)隊(duì)的開(kāi)發(fā)與合作規(guī)范ppt課件_第3頁(yè)
軟件團(tuán)隊(duì)的開(kāi)發(fā)與合作規(guī)范ppt課件_第4頁(yè)
軟件團(tuán)隊(duì)的開(kāi)發(fā)與合作規(guī)范ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、軟件工程開(kāi)發(fā)規(guī)范.培訓(xùn)目的 開(kāi)發(fā)規(guī)范培訓(xùn)的目的是為了保證在系統(tǒng)設(shè)計(jì)、編碼、測(cè)試、維護(hù)的過(guò)程中工程組人員遵照一套一致系統(tǒng)設(shè)計(jì)規(guī)范、運(yùn)用程序編寫(xiě)規(guī)范、頁(yè)面風(fēng)格規(guī)范,借以提高軟件開(kāi)發(fā)團(tuán)隊(duì)的效率、添加代碼的一致性、可讀性,可維護(hù)性,保證工程開(kāi)發(fā)穩(wěn)定。 本次培訓(xùn)提供了工程開(kāi)發(fā)的各項(xiàng)規(guī)范以及指點(diǎn)原那么。開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程中必需嚴(yán)厲遵守此開(kāi)發(fā)規(guī)范。 .開(kāi)發(fā)規(guī)范參考資料想要更深化了解本次培訓(xùn)涉及到背景知識(shí),可訪(fǎng)問(wèn)以下網(wǎng)站。SUN的官方網(wǎng)站:java.sun IBM官方網(wǎng)站:www-900.ibm/developerWorks關(guān)于代碼規(guī)范規(guī)范可參閱:Java Programming Style Guide ja

2、varanch/style.jspAmbySoft Inc. Coding Standards for Java v17.01d ambysoft/javaCodingStandards.htmlCode Conventions for the JavaTM Programming Language java.sun/docs/codeconv/html/CodeConvTOC.doc.html.開(kāi)發(fā)人員角色 開(kāi)發(fā)組長(zhǎng):控制團(tuán)隊(duì)開(kāi)發(fā),只需在開(kāi)發(fā)組長(zhǎng)的授權(quán)下,才可進(jìn)展根底開(kāi)發(fā)包的變動(dòng)。設(shè)計(jì)人員:擔(dān)任詳細(xì)設(shè)計(jì)??煽刂频奈臋n:各種方式的設(shè)計(jì)文件, 包括用例圖,流程圖等。編程人員:擔(dān)任程序開(kāi)發(fā)??煽刂?/p>

3、的文檔:程序源代碼。整合人員:擔(dān)任運(yùn)用程序內(nèi)部模塊與模塊之間的整合,以及運(yùn)用程序與運(yùn)用平臺(tái)之間的整合??煽刂频奈臋n:程序開(kāi)發(fā)包,系統(tǒng)配置文件。部署人員:擔(dān)任運(yùn)用程序的部署,同時(shí)擔(dān)任運(yùn)用效力器的維護(hù)??煽刂频奈臋n:部署描畫(huà)文件。數(shù)據(jù)庫(kù)管理員:擔(dān)任數(shù)據(jù)庫(kù)的維護(hù),調(diào)優(yōu)??煽刂频奈臋n:數(shù)據(jù)庫(kù)腳本。測(cè)試人員:擔(dān)任程序的測(cè)試任務(wù),可控制的文檔:測(cè)試報(bào)告。在開(kāi)發(fā)過(guò)程中,每個(gè)人可同時(shí)兼任數(shù)個(gè)角色,并進(jìn)展角色轉(zhuǎn)換。 .開(kāi)發(fā)環(huán)境 應(yīng)用程序服務(wù)器:IBM WebSphere Application Server 6.1數(shù)據(jù)庫(kù):DB2 9.0開(kāi)發(fā)工具:JAVA IDEEclipse 頁(yè)面開(kāi)發(fā)Editplus*、Dre

4、amWeaver*版本控制工具:VSS.軟件環(huán)境搭建過(guò)程第1步:安裝DB2; 第2步:安裝WebSphere;第3步:安裝ResourceOne; 第4步:安裝VSS;第5步:從VSS中下載運(yùn)用程序的開(kāi)發(fā)包,包括目錄構(gòu)造、基類(lèi),第三方開(kāi)發(fā)包;第6步:將運(yùn)用程序開(kāi)發(fā)包部署進(jìn)WebSphere ; .Java程序 命名規(guī)范包名:Package 的名字應(yīng)該都是由小寫(xiě)單詞組成。如test.demo.example 。文件名 :文件名由英文單詞組成,每個(gè)單詞的首字母大寫(xiě),不要超越4個(gè)單詞,如ShipOrder.java。Java文件的文件名要與程序中的public類(lèi)名一樣。Servet文件要以Servl

5、et做為結(jié)尾,如AddCompanyServlet.java訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的Bean要以DBBean為結(jié)尾,如AddCompanyDBBean.java .Java程序 命名規(guī)范類(lèi)名 :Class 的名字必需由大寫(xiě)字母開(kāi)頭而其他字母都小寫(xiě)的單詞組成變量名:Class 變量的命名 :變量的名字必需用一個(gè)小寫(xiě)字母開(kāi)頭。后面的單詞用大寫(xiě)字母開(kāi)頭。 Static Final 變量的命名 :Static Final 變量的名字應(yīng)該都大寫(xiě),并且指出完好含義。用有意義的名字命名變量 。首先,用完好的英語(yǔ)單詞或商定俗成的簡(jiǎn)寫(xiě)命名他的變量(不允許用漢語(yǔ)拼音),如: firstName,zipCode用復(fù)數(shù)命名col

6、lection類(lèi)變量。ollection包括數(shù)組,vector等。命名時(shí)運(yùn)用復(fù)數(shù): customers ,classmates方法名:方法的名字必需用一個(gè)小寫(xiě)字母開(kāi)頭。后面的單詞用大寫(xiě)字母開(kāi)頭。方法的名字要與該方法的用途相關(guān)。 .Java程序 命名規(guī)范參數(shù)名 :參數(shù)的命名 :參數(shù)的名字必需和變量的命名規(guī)范一致。 方法的參數(shù) :運(yùn)用有意義的參數(shù)命名,假設(shè)能夠的話(huà),運(yùn)用和要賦值的字段一樣的名字。.Java程序 命名規(guī)范增刪改程序和頁(yè)面的調(diào)用關(guān)系和文件名 .Java程序 命名規(guī)范增刪改程序和頁(yè)面的調(diào)用關(guān)系和文件名 AddOrderServer, SaveOrderServer, DeleteOrde

7、rServlet不需求頁(yè)面,其他有JSP頁(yè)面的Servlet要與JSP文件名相對(duì)應(yīng)。OrderDetailServet對(duì)應(yīng)兩個(gè)JSP文件,EditOrder用于可編輯形狀,ShowOrder用于不可編輯形狀。AddOrderServlet和SaveOrderServlet的前往頁(yè)面可以是List頁(yè)面,也可以是Detail頁(yè)面,假設(shè)當(dāng)前人已完成一切可進(jìn)展的操作,那么回到List頁(yè)面,假設(shè)未完成,那么回到Detail頁(yè)面。 .Java程序 代碼格式文件頭 :版權(quán)信息 版權(quán)信息必需在 java 文件的開(kāi)頭,比如:/* 類(lèi)名* 日期* 修正記錄* Copyright ICSS 2003* All ri

8、ght reserved.*/其他不需求出如今 javadoc 的信息也可以包含在這里。Package/Imports package 行要在 import 行之前,import 中規(guī)范的包名要在本地的包名之前,而且按照字母順序陳列。假設(shè) import 行中包含了同一個(gè)包中的不同子目錄,那么應(yīng)該用 * 來(lái)處置。對(duì)于import語(yǔ)句,假設(shè)某一個(gè)包中援用的類(lèi)不超越三個(gè)包括三個(gè),不允許用import xxx.*;格式。將import的classes歸類(lèi),按順序羅列: a. Java規(guī)范類(lèi)(java.*) b. Java擴(kuò)展類(lèi)(javax.*) c. 第三方類(lèi) d. 他的運(yùn)用程序的類(lèi).Java程序 代

9、碼格式縮進(jìn) 縮進(jìn)應(yīng)該是每行4個(gè)空格,不要在源文件中保管Tab字符。 在運(yùn)用不同的源代碼管理工具時(shí)Tab字符將由于用戶(hù)設(shè)置的不同而擴(kuò)展為不同的寬度。注釋 為保證開(kāi)發(fā)后JAVA DOC的順利生成,開(kāi)發(fā)人員必需在一切方法,全局變量前參與加上規(guī)范JAVA注釋。類(lèi)注釋需求包含以下要素:方法描畫(huà)參數(shù): param 參數(shù)名 闡明前往值: return 闡明例外情況:exception 完好類(lèi)名 闡明/* this is a doc sample* param args array of string arguments* return No return value* exception exception

10、 No exceptions thrown */頁(yè)寬 頁(yè)寬應(yīng)該設(shè)置為80字符, 源代碼普通不會(huì)超越這個(gè)寬度, 并導(dǎo)致無(wú)法完好顯示, 但這一設(shè)置也可以靈敏調(diào)整。 在任何情況下, 超長(zhǎng)的語(yǔ)句應(yīng)該在一個(gè)逗號(hào)或者一個(gè)操作符后折行, 一條語(yǔ)句折行后, 應(yīng)該比原來(lái)的語(yǔ)句再縮進(jìn)2個(gè)字符。.HTML/JSP 代碼規(guī)范文件頭文件頭要寫(xiě)明該文件的用途,及修正記錄。如:! 文件名:OrderList.jsp 闡明:訂單列表 修正記錄:2003-08-24,張三,添加一個(gè)按鈕縮進(jìn) HTML標(biāo)志層次之間的縮進(jìn)為2個(gè)字符,Java代碼的縮進(jìn)為4個(gè)字符,文件中不要有Tab符號(hào),都要交換為空格。 .Java編程技巧 exit

11、() exit 除了在 main 中可以被調(diào)用外,其他的地方不應(yīng)該調(diào)用。由于這樣做不給任何代碼代碼時(shí)機(jī)來(lái)截獲退出。一個(gè)類(lèi)似后臺(tái)效力地程序不應(yīng)該由于某一個(gè)庫(kù)模塊決議了要退出就退出。 異常 聲明的錯(cuò)誤應(yīng)該拋出一個(gè)RuntimeException或者派生的異常。 頂層的main()函數(shù)應(yīng)該截獲一切的異常,并且打印或者記錄在日志中在屏幕上。 .Java編程技巧渣滓搜集 JAVA運(yùn)用成熟的后臺(tái)渣滓搜集技術(shù)來(lái)替代援用計(jì)數(shù)。但是這樣會(huì)導(dǎo)致一個(gè)問(wèn)題:他必需在運(yùn)用完對(duì)象的實(shí)例以后進(jìn)展清場(chǎng)任務(wù)。比如一個(gè)prel的程序員能夠這么寫(xiě): .FileOutputStream fos = new FileOutputStr

12、eam(projectFile);project.save(fos, IDE Project File); . 除非輸出流一出作用域就封鎖,非援用計(jì)數(shù)的程序文語(yǔ),比如JAVA,是不能自動(dòng)完成變量的清場(chǎng)任務(wù)的。必需象下面一樣寫(xiě): FileOutputStream fos = new FileOutputStream(projectFile);project.save(fos, IDE Project File); fos.close();.Java編程技巧Clone 下面是一種有用的方法: implements CloneablepublicObject clone()try ThisClass

13、 obj = (ThisClass)super.clone();obj.field1 = (int)field1.clone();obj.field2 = field2;return obj; catch(CloneNotSupportedException e) throw new InternalError(Unexpected CloneNotSUpportedException: + e.getMessage();.Java編程技巧運(yùn)用 StringBuffer 對(duì)象 在處置 String 的時(shí)候要盡量運(yùn)用 StringBuffer 類(lèi),StringBuffer 類(lèi)是構(gòu)成 String

14、 類(lèi)的根底。String 類(lèi)將 StringBuffer 類(lèi)封裝了起來(lái),以破費(fèi)更多時(shí)間為代價(jià)為開(kāi)發(fā)人員提供了一個(gè)平安的接口。當(dāng)我們?cè)跇?gòu)造字符串的時(shí)候,我們應(yīng)該用 StringBuffer 來(lái)實(shí)現(xiàn)大部分的任務(wù),當(dāng)任務(wù)完成后將 StringBuffer 對(duì)象再轉(zhuǎn)換為需求的 String 對(duì)象。比如:假設(shè)有一個(gè)字符串必需不斷地在其后添加許多字符來(lái)完成構(gòu)造,那么我們應(yīng)該運(yùn)用 StringBuffer 對(duì)象和她的 append() 方法。假設(shè)我們用 String 對(duì)象替代 StringBuffer 對(duì)象的話(huà),會(huì)破費(fèi)許多不用要的創(chuàng)建和釋放對(duì)象的 CPU 時(shí)間。 防止太多的運(yùn)用 synchronized 關(guān)

15、鍵字 防止不用要的運(yùn)用關(guān)鍵字 synchronized,應(yīng)該在必要的時(shí)候再運(yùn)用她,這是一個(gè)防止死鎖的好方法。 換行 假設(shè)需求換行的話(huà),盡量用 println 來(lái)替代在字符串中運(yùn)用n。 他不要這樣: System.out.print(Hello,world!n); 要這樣: System.out.println(Hello,world!); 或者他構(gòu)造一個(gè)帶換行符的字符串,至少要象這樣: String newline = System.getProperty(line.separator); System.out.println(Hello world + newline); .數(shù)據(jù)庫(kù)規(guī)范 數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),應(yīng)按照關(guān)系數(shù)據(jù)庫(kù)的建模理念,滿(mǎn)足設(shè)計(jì)范式。在構(gòu)造物理實(shí)體時(shí),應(yīng)參照DB2性能手冊(cè),優(yōu)化DB2性能。 第一種規(guī)范方式:表中的每一行和每一列均有一個(gè)值,永遠(yuǎn)不會(huì)是一組值。 第二種規(guī)范方式:不在關(guān)鍵字中的每一列提供取決于整個(gè)關(guān)鍵字的現(xiàn)實(shí)。 第三種規(guī)范方式:每個(gè)非關(guān)鍵字列提供與其他非關(guān)鍵字列無(wú)關(guān)并只取決于該關(guān)鍵字的現(xiàn)實(shí)。 第四種規(guī)范方式:沒(méi)有行包含有關(guān)一個(gè)實(shí)體的兩個(gè)或更多個(gè)獨(dú)立的多值現(xiàn)實(shí)。 每種范式均運(yùn)用于特定條件。 .LOG記錄規(guī)范級(jí)別(Level):輸出日志的重要程度,便于控制日志輸出的多少。輸出目的地(Appender):日志可以被寫(xiě)入的存儲(chǔ)空間,常見(jiàn)的有控制臺(tái)、文件

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論