2011年軟件水平考試軟件設計師輔導資料(7)
第6章_軟件編碼
本章的內(nèi)容比較少且簡單,多為識記的內(nèi)容,想必每一個學到本課程的同學都已經(jīng)有過編碼(寫程序)的經(jīng)驗,也積累了一些編程方面的經(jīng)驗,在本章中,就是從理論的角度來討論一下程序設計語言的特色及編碼應注意的程序設計風格。以理解和記憶為主。所以下面就一些記憶要點作一摘要。
一、程序設計語言的特性及選擇
程序設計語言有三個特性,他們是:心理特性、工程特性和技術(shù)特性。
1、心理特性:是指影響程序員心理的語言性能,包括歧義性,簡潔性,局部性和順序性,傳統(tǒng)性幾個方面。
歧義性:是指某些語言雖然在編譯程序中只有一種解釋,但在人們看來卻可能產(chǎn)生兩種或多種不同的解釋。
簡潔性:是指人們必須記住的語言成分的數(shù)量。
局部性和順序性:局部性指語言的聯(lián)想性,模塊的高內(nèi)聚低耦合使局部性得以加強,提供異常處理的語言特性則削弱局部性。順序性強則使人們易理解,易接受。
傳統(tǒng)性:由于人們使用語言有一種習慣性。若新語種的傳統(tǒng)性強,則人們學習起來容易接受。反之則需要更多時間來學習??梢妭鹘y(tǒng)性容易影響人們學習新語種的積極性。
2、工程特性:從軟件工程的觀點,程序設計語言的特性著重考慮軟件開發(fā)項目的需要,因此對程序編碼有如下要求:可移植性、開發(fā)工具的可利用性、軟件的可重用性及可維護性。
可移植性:是指程序從一個計算機環(huán)境移植到另一個計算機環(huán)境的容易程度。
開發(fā)工具的可利用性:就是說一個開發(fā)工具好不好用,功能多不多,強不強。比如VC++就是一個開發(fā)工具。
軟件的可重用性:指編程語言能否提供可重用的軟件成分,重用時需要修改調(diào)整的內(nèi)容多不多。
可維護性:一個易讀懂,易修改的軟件就是可維護性好的軟件。
3、技術(shù)特性。
二、程序設計語言的選擇
這一節(jié)主要要識記一些語言所適合的需求,考慮選擇語言的因素有:項目的應用領域、軟件開發(fā)的方法、軟件執(zhí)行的環(huán)境、算法和數(shù)據(jù)結(jié)構(gòu)的復雜性以及軟件開發(fā)人員的知識等。
1、項目應用領域
科學工程計算:主要有FORTRAN語言,它是世界上第一個被正式推廣應用的計算機語言。
Pascal語言,具有很強的數(shù)據(jù)和過程結(jié)構(gòu)化能力,它是第一個體現(xiàn)結(jié)構(gòu)化編程思想的語言
C語言:功能強大,它具有匯編語言的某些特征,使程序運行效率高。
PL/1語言:適用性廣,但由于太龐大而難以推廣。
數(shù)據(jù)處理與數(shù)據(jù)應用,主要有Coble語言,廣泛用于商業(yè)數(shù)據(jù)處理。這種語言中程序說明與硬件環(huán)境說明分開、數(shù)據(jù)描述與算法描述分開。
SQL:結(jié)構(gòu)化查詢語言,用于對數(shù)據(jù)庫進行存取管理。
4GL(第4代語言),包括Foxpro、Uniface、PowerBuilder Informix4GL等語言。這種語言有幾個特征:
(1)友好的用戶界面
(2)兼有過程性和非過程性雙重特性
(3)高效的程序代碼
(4)完備的數(shù)據(jù)庫
(5)應用程序生成器
實時處理,主要有匯編語言和Ada語言。
系統(tǒng)軟件,主要可用匯編語言、C語言、Pascal和Ada語言。
人工智能,應選擇Prolog、Lisp語言。Lisp是一種函數(shù)型語言。Prolog是一種邏輯型語言。
如果用面向?qū)ο蠓椒ㄩ_發(fā)軟件,可采用C++、Java語言。
近年來軟件開發(fā)環(huán)境已進入可視化時代,我們的實踐課程中,也都需要你有可視化編程工具進行程序設計,可用的如Visual Basic 、Visual C++、Visual Foxpro 、Delphi等等。我們應該去學習掌握這些可視化編程工具。
三、程序設計風格
程序設計風格是指一個人編制程序時所表現(xiàn)出來的特點、習慣、邏輯思路等。
要形成良好的程序設計風格,應注意以下幾個方面:
源程序文檔化:即給標識符取名和注釋方面養(yǎng)成良好的習慣,注意寫出易讀易理解的程序文檔。
數(shù)據(jù)說明:注意數(shù)據(jù)說明時的順序和變量名的排列順序以及必要的注釋。
語句構(gòu)造:特別要注意的是,在寫程序時要以代碼的易讀易解為先,不要把為了實現(xiàn)高效率而把一些原本容易理解的語句寫成一個復雜的語句。從而降低軟件可維護性。
輸入輸出效率:要注意的是,追求效率要建立在不損害程序可讀性或可靠性基礎之上,要先使程序正確、再提高效率,要先使程序清晰,再提高程序效率。
【編輯推薦】