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