版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1軟件工程項(xiàng)目管理可行性與需求分析
系統(tǒng)設(shè)計(jì)編碼測(cè)試維護(hù)軟件工程與項(xiàng)目管理的主要環(huán)節(jié)第六章編碼及代碼審查
程序設(shè)計(jì)這一階段的工作是把詳細(xì)設(shè)計(jì)中,具體的過(guò)程性描述內(nèi)容,翻譯成某一種程序設(shè)計(jì)語(yǔ)言編寫的源程序。本章不是具體的介紹如何編寫程序,而是從軟件工程這個(gè)更廣泛的范圍,討論與程序設(shè)計(jì)語(yǔ)言及程序編碼有關(guān)的問(wèn)題。
3目錄程序設(shè)計(jì)語(yǔ)言編碼規(guī)約代碼審查46.1程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言的分類:第一、二代第三代第四代機(jī)器語(yǔ)言(第一代)匯編語(yǔ)言(第二代)面向機(jī)器的語(yǔ)言高級(jí)語(yǔ)言基礎(chǔ)語(yǔ)言現(xiàn)代語(yǔ)言專用語(yǔ)言甚高級(jí)語(yǔ)言4GL語(yǔ)言SQL語(yǔ)言6.1.1程序設(shè)計(jì)語(yǔ)言的分類語(yǔ)言的等級(jí)劃分,程序設(shè)計(jì)語(yǔ)言可以分為機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言三類。
高級(jí)語(yǔ)言從應(yīng)用特點(diǎn)上可以分為基礎(chǔ)語(yǔ)言(例:FORTRAN,COBOL)、結(jié)構(gòu)化語(yǔ)言(例:
PASCAL,C)、專用語(yǔ)言(例:PROLOG,BLISS);從語(yǔ)言內(nèi)在特點(diǎn)可以分為系統(tǒng)實(shí)現(xiàn)語(yǔ)言(例:C語(yǔ)言)、靜態(tài)高級(jí)語(yǔ)言(例:FORTRAN、COBOL)、塊結(jié)構(gòu)高級(jí)語(yǔ)言(例:PASCAL,ALGOL)、動(dòng)態(tài)高級(jí)語(yǔ)言;從語(yǔ)言的執(zhí)行方式劃分:解釋語(yǔ)言和編譯語(yǔ)言。高級(jí)語(yǔ)言有:Java、C、C++、VC、C#、VB等。6.1.2程序設(shè)計(jì)語(yǔ)言的特性工程特性:語(yǔ)言可移植性開發(fā)工具的可用性語(yǔ)言的可重用性語(yǔ)言的可維護(hù)性
6.1.2程序設(shè)計(jì)語(yǔ)言的特性心理特性:二義性
簡(jiǎn)潔性
局部性和順序性
傳統(tǒng)性86.1.3編程語(yǔ)言的選擇選擇程序設(shè)計(jì)語(yǔ)言的標(biāo)準(zhǔn)從用戶方面考慮若由用戶自己維護(hù)軟件,應(yīng)選擇用戶熟悉的程序設(shè)計(jì)語(yǔ)言。從程序員方面考慮軟件開發(fā)人員的知識(shí)水平和心理因素等;9從軟件的可移植性考慮
如果目標(biāo)系統(tǒng)將在不同的計(jì)算機(jī)環(huán)境下運(yùn)行,或者預(yù)期使用的壽命很長(zhǎng),則需要選擇一種標(biāo)準(zhǔn)化程度高,并且程序可移植性好的語(yǔ)言實(shí)現(xiàn)設(shè)計(jì)。從應(yīng)用領(lǐng)域考慮不同的程序設(shè)計(jì)語(yǔ)言有著不同的適用范圍。10
程序設(shè)計(jì)語(yǔ)言的特性和程序設(shè)計(jì)風(fēng)格,會(huì)深刻地影響軟件的質(zhì)量和可維護(hù)性。為了保證程序編碼的質(zhì)量,程序員必須深刻理解、熟練掌握并正確地運(yùn)用程序設(shè)計(jì)語(yǔ)言的特性。此外,還要求源程序具有良好的結(jié)構(gòu)和良好的程序設(shè)計(jì)風(fēng)格。
高效的程序代碼。能縮短開發(fā)周期,并減少維護(hù)代價(jià)。1、以下屬于第三代程序設(shè)計(jì)語(yǔ)言的選項(xiàng)是()。A.機(jī)器語(yǔ)言B.現(xiàn)代語(yǔ)言C.匯編語(yǔ)言D.SQL語(yǔ)言112、以下描述錯(cuò)誤的是()。A.程序設(shè)計(jì)語(yǔ)言的特性和程序設(shè)計(jì)風(fēng)格,會(huì)深刻地影響軟件的質(zhì)量和可維護(hù)性B.為了保證程序編碼的質(zhì)量,程序員必須深刻理解、熟練掌握并正確地運(yùn)用程序設(shè)計(jì)語(yǔ)言的特性C.高效的程序代碼能縮短開發(fā)周期,并減少維護(hù)代價(jià)D.只要程序設(shè)計(jì)語(yǔ)言選擇的好就可以設(shè)計(jì)出高效的程序代碼,對(duì)于程序的結(jié)構(gòu)沒(méi)有要求123、以下屬于選擇程序設(shè)計(jì)語(yǔ)言的標(biāo)準(zhǔn)的選項(xiàng)是()。A.選擇用戶熟悉的程序設(shè)計(jì)語(yǔ)言B.從程序員知識(shí)水平和心理因素等方面考慮C.從軟件的可移植性考慮D.以上三項(xiàng)都屬于131、4GL語(yǔ)言屬于第三代程序設(shè)計(jì)語(yǔ)言()。2、程序設(shè)計(jì)這一階段的工作是把詳細(xì)設(shè)計(jì)中,具體的過(guò)程性描述內(nèi)容,翻譯成某一種程序設(shè)計(jì)語(yǔ)言編寫的源程序()。3、選擇程序設(shè)計(jì)語(yǔ)言只需要從程序員技術(shù)層面考慮()。4、高效的程序代碼能縮短開發(fā)周期,并減少維護(hù)代價(jià)()。5、為了保證程序編碼的質(zhì)量,程序員必須深刻理解、熟練掌握并正確地運(yùn)用所有程序設(shè)計(jì)語(yǔ)言的特性。此外,還要求源程序具有良好的結(jié)構(gòu)和良好的程序設(shè)計(jì)風(fēng)格()。14156.2編程規(guī)約程序設(shè)計(jì)風(fēng)格也稱編程風(fēng)格。指人們編制程序時(shí)所表現(xiàn)出來(lái)的特點(diǎn)、習(xí)慣、邏輯思路。良好的編程風(fēng)格可以減少編碼錯(cuò)誤,減少讀程序的時(shí)間,從而提高軟件的開發(fā)效率。16源程序文檔化數(shù)據(jù)說(shuō)明語(yǔ)句結(jié)構(gòu)滿足運(yùn)行工程學(xué)的輸入輸出風(fēng)格
注意從這幾個(gè)方面培養(yǎng)和學(xué)習(xí)良好的編程風(fēng)格,使編出的程序清晰易讀,易于測(cè)試與維護(hù),從而提高軟件的質(zhì)量。主要從以下方面注意編程風(fēng)格17(1)恰當(dāng)?shù)臉?biāo)識(shí)符標(biāo)識(shí)符即符號(hào)名,包括文件名、模塊名、變量名。這些名字應(yīng)能反映出它所代表的實(shí)際內(nèi)容。也就是說(shuō),名字應(yīng)有一定的實(shí)際意義。(注:長(zhǎng)度、縮寫)例如:表示次數(shù)的量用Times表示。1.源程序文檔化18(2)適當(dāng)?shù)淖⑨寠A在程序中的注釋是程序員與日后的程序讀者之間通信的重要手段。注釋決不是可有可無(wú)的。一些正規(guī)的程序文本中,注釋行的數(shù)量占到整個(gè)源程序的1/3到1/2,甚至更多。19(3)標(biāo)準(zhǔn)的書寫格式書寫表達(dá)式時(shí),恰當(dāng)使用空格或圓括號(hào)等作隔離符。例如:應(yīng)將(A<-17)ANDNOT(B<=49)ORC寫成(A<-17)ANDNOT(B<=49)ORC在注釋段的周圍加上邊框。用分層縮進(jìn)的寫法顯示選擇結(jié)構(gòu)和循環(huán)20在設(shè)計(jì)階段已經(jīng)確定了數(shù)據(jù)結(jié)構(gòu)的組織及其復(fù)雜性。在編寫程序時(shí),則需要注意數(shù)據(jù)說(shuō)明的風(fēng)格為了使程序中數(shù)據(jù)說(shuō)明更易于理解和維護(hù),必須注意以下幾點(diǎn):2.數(shù)據(jù)說(shuō)明21(1)數(shù)據(jù)說(shuō)明的次序應(yīng)當(dāng)規(guī)范化在程序中數(shù)據(jù)說(shuō)明,應(yīng)按下列次序進(jìn)行:①常量說(shuō)明②變量類型說(shuō)明
1)整型量說(shuō)明;2)實(shí)型量說(shuō)明;
3)字符量說(shuō)明;4)邏輯量說(shuō)明③數(shù)組說(shuō)明④公用數(shù)據(jù)塊說(shuō)明⑤所有的文件說(shuō)明
22(2)數(shù)據(jù)說(shuō)明語(yǔ)句中變量安排有序化當(dāng)多個(gè)變量名在一個(gè)說(shuō)明語(yǔ)句中說(shuō)明時(shí),應(yīng)當(dāng)對(duì)這些變量按字母的順序排列。帶標(biāo)號(hào)的全程數(shù)據(jù)也應(yīng)當(dāng)按字母的順序排列。例如:integersize,length,width,cost,price
寫成integer
cost,length,price,size,width(3)使用注釋說(shuō)明復(fù)雜數(shù)據(jù)結(jié)構(gòu)23(1)在一行內(nèi)只寫一條語(yǔ)句例:一段排序程序
FORI:=1TON-1DOBEGINT:=I;FORJ:=I+1TONDOIFA[J]<A[T]THENT:=J;IFT<>ITHENBEGINWORK:=A[T];A[T]:=A[I];A[I]:=WORK;ENDEND;3.語(yǔ)句結(jié)構(gòu)24(2)程序的編寫首先應(yīng)當(dāng)考慮清晰性:清晰第一,效率第二。(3)要模塊化,使模塊功能盡可能單一化,模塊間的耦合能夠清晰可見(jiàn)。(4)利用信息隱蔽,確保每個(gè)模塊的獨(dú)立性。(4)盡可能用通俗易懂的偽碼來(lái)描述程序的流程,然后再翻譯成必須使用的語(yǔ)言。(5)盡量減少使用“否定”條件的條件語(yǔ)句25(6)盡量只采用三種基本的控制結(jié)構(gòu)來(lái)編寫程序。除順序結(jié)構(gòu)外,使用if-then-else來(lái)實(shí)現(xiàn)選擇結(jié)構(gòu);使用do-until或do-while來(lái)實(shí)現(xiàn)循環(huán)結(jié)構(gòu)。(7)避免使用空的ELSE語(yǔ)句和IF…THENIF…的語(yǔ)句。這種結(jié)構(gòu)容易使讀者產(chǎn)生誤解。(8)對(duì)于修補(bǔ)不好的程序,要重新編寫。不要一味地追求代碼的復(fù)用,要重新組織。(9)對(duì)太大的程序,要分塊編寫、測(cè)試,然后再集成。26輸入和輸出信息是與用戶的使用直接相關(guān)的。輸入和輸出的方式和格式應(yīng)當(dāng)盡可能方便用戶的使用。4.輸入/輸出方法6.3.1代碼審查的目的和形式代碼審查是一個(gè)開發(fā)人員與架構(gòu)師集中與討論代碼的過(guò)程。代碼審查就是以組為單位閱讀代碼,是一系列規(guī)程和錯(cuò)誤檢查技術(shù)的集合。代碼審查是一種非常有效的程序驗(yàn)證技術(shù),對(duì)于典型的程序來(lái)說(shuō),可以查出最多達(dá)70%的邏輯設(shè)計(jì)錯(cuò)誤和編碼錯(cuò)誤。代碼審查的形式主要有幾種:同行評(píng)審;管理評(píng)審;單人評(píng)審;代碼檢查。
6.3.2代碼審查小組和代碼審查內(nèi)容代碼審查的小組成員一般由三至五人組成,大型項(xiàng)目評(píng)審組人員最多可能會(huì)多達(dá)10人左右,但通常是由四人組成。除項(xiàng)目評(píng)審組人員外,評(píng)審活動(dòng)中還有的角色是項(xiàng)目經(jīng)理和質(zhì)量保證人員。代碼審查過(guò)程中,在代碼檢查的時(shí)間和地點(diǎn)上的選擇上,應(yīng)避免所有的外部干擾。代碼的審查內(nèi)容主要有:代碼的編寫規(guī)范(注釋的書寫格式、命名規(guī)范、代碼組織結(jié)構(gòu))、技術(shù)處理規(guī)范(異常處理、日志處理)、業(yè)務(wù)實(shí)現(xiàn)等。
6.3.3代碼審查過(guò)程代碼審查輸入及入口準(zhǔn)則:代碼審查的步驟
制定評(píng)審計(jì)劃;評(píng)審準(zhǔn)備;評(píng)審會(huì)議;對(duì)評(píng)審結(jié)果采取行動(dòng);評(píng)審結(jié)果跟蹤;提交和歸檔。
30程序設(shè)計(jì)課后習(xí)題以下屬于第三代程序設(shè)計(jì)語(yǔ)言的選項(xiàng)是()。A.機(jī)器語(yǔ)言B.現(xiàn)代語(yǔ)言C.匯編語(yǔ)言D.SQL語(yǔ)言31程序設(shè)計(jì)課后習(xí)題2.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是()。A.程序的規(guī)模B.程序的效率C.程序設(shè)計(jì)語(yǔ)言的先進(jìn)性D.程序易讀性D32程序設(shè)計(jì)課后習(xí)題3.以下符合編碼風(fēng)格要求的是()。盡可能把程序編得短些用有意義的變量名C.注釋越少越好D.盡可能多地使用GOTO語(yǔ)句B334.下列屬于標(biāo)準(zhǔn)的書寫格式()。A.書寫時(shí)適當(dāng)使用空格分隔B.一行寫入多條語(yǔ)句C.嵌套結(jié)構(gòu)不使用分層縮進(jìn)的寫法D.程序中不加注釋A345.以下描述錯(cuò)誤的是()。A.程序設(shè)計(jì)語(yǔ)言的特性和程序設(shè)計(jì)風(fēng)格,會(huì)深刻地影響軟件的質(zhì)量和可維護(hù)性B.為了保證程序編碼的質(zhì)量,程序員必須深刻理解、熟練掌握并正確地運(yùn)用程序設(shè)計(jì)語(yǔ)言的特性C.高效的程序代碼。能縮短開發(fā)周期,并減少維護(hù)代價(jià)D.只要程序設(shè)計(jì)語(yǔ)言選擇的好就可以設(shè)計(jì)出高效的程序代碼,對(duì)于程序的結(jié)構(gòu)沒(méi)有要求356.以下屬于選擇程序設(shè)計(jì)語(yǔ)言的標(biāo)準(zhǔn)的選項(xiàng)是()。A.選擇用戶熟悉的程序設(shè)計(jì)語(yǔ)言B.從程序員知識(shí)水平和心理因素等方面考慮C.從軟件的可移植性考慮D.以上三項(xiàng)都屬于36高效的程序代碼。能縮短開發(fā)周期,并減少維護(hù)代價(jià)。()程序設(shè)計(jì)語(yǔ)言的特性和程序設(shè)計(jì)風(fēng)格,會(huì)深刻地影響軟件的質(zhì)量和可維護(hù)性。()對(duì)對(duì)37程序設(shè)計(jì)語(yǔ)言中應(yīng)絕對(duì)禁止使用GOTO語(yǔ)句。()隨著軟件技術(shù)的發(fā)展,人們逐漸認(rèn)識(shí)到編碼不僅要強(qiáng)調(diào)效率還要強(qiáng)調(diào)清晰。()錯(cuò)對(duì)385.4GL語(yǔ)言屬于第三代程序設(shè)計(jì)語(yǔ)言。()程序設(shè)計(jì)這一階段的工作是把詳細(xì)設(shè)計(jì)中,具體的過(guò)程性描述內(nèi)容,翻譯成某一種程序設(shè)計(jì)語(yǔ)言編寫的源程序。(
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度特種車輛安裝與安全培訓(xùn)合同3篇
- 西安醫(yī)學(xué)高等??茖W(xué)校《商業(yè)影片綜合案例制作》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版1209兩人合伙經(jīng)營(yíng)寵物美容與寄養(yǎng)中心協(xié)議3篇
- 二零二五年度珠寶首飾交易居間代理協(xié)議3篇
- 新疆機(jī)電職業(yè)技術(shù)學(xué)院《影視劇美術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 個(gè)體經(jīng)銷商專屬銷售授權(quán)協(xié)議(2024年度)版B版
- 通化師范學(xué)院《二維動(dòng)畫技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024離婚債務(wù)分割詳細(xì)合同書版B版
- 二零二五版廚具設(shè)備售后服務(wù)與技術(shù)培訓(xùn)合同3篇
- 2024版電源租賃協(xié)議
- 銀行會(huì)計(jì)主管年度工作總結(jié)2024(30篇)
- 教師招聘(教育理論基礎(chǔ))考試題庫(kù)(含答案)
- 2024年秋季學(xué)期學(xué)校辦公室工作總結(jié)
- 上海市12校2025屆高三第一次模擬考試英語(yǔ)試卷含解析
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案集錦
- 長(zhǎng)亭送別完整版本
- 《鐵路軌道維護(hù)》課件-更換道岔尖軌作業(yè)
- 股份代持協(xié)議書簡(jiǎn)版wps
- 職業(yè)學(xué)校視頻監(jiān)控存儲(chǔ)系統(tǒng)解決方案
- 《銷售心理學(xué)培訓(xùn)》課件
- 2024年安徽省公務(wù)員錄用考試《行測(cè)》真題及解析
評(píng)論
0/150
提交評(píng)論