【摘要】計算機(jī)在現(xiàn)代生活中發(fā)揮著越來越重要的作用,而計算機(jī)軟件的開發(fā)設(shè)計則促進(jìn)了計算機(jī)的發(fā)展。本文著重探討了計算機(jī)軟件設(shè)計和實現(xiàn)過程中應(yīng)當(dāng)遵循的原則,并闡述了軟件設(shè)計的幾種主要方法。
【關(guān)鍵詞】計算機(jī)軟件原則設(shè)計
隨著信息時代的逐漸到來,計算機(jī)已經(jīng)在社會的眾多領(lǐng)域發(fā)揮著不可替代的作用。計算機(jī)軟件的完善和開發(fā)一方面促進(jìn)了計算機(jī)硬件的更新?lián)Q代,另一方面又極大提高了計算機(jī)的使用效益,因而計算機(jī)軟件的設(shè)計與實現(xiàn)日益成為了人們關(guān)注的焦點問題。
一、計算機(jī)軟件設(shè)計與實現(xiàn)過程應(yīng)當(dāng)遵循的原則
1.1科學(xué)的軟件設(shè)計必須能夠準(zhǔn)確抓住用戶的需求
由于不同用戶對軟件的設(shè)計有著不同的要求,沒有一個通用的模板可以使用,這就需要軟件設(shè)計者與客戶不斷的溝通以及對行業(yè)領(lǐng)域的充分研究來獲得用戶真實的需求,這是一件較為困難的事情。
1.2軟件的設(shè)計與實現(xiàn)應(yīng)當(dāng)是一個不斷重構(gòu)的過程
軟件的設(shè)計應(yīng)當(dāng)是一個循序漸進(jìn)的過程,而不是一蹴而就、一步到位的過程。因而設(shè)計者在設(shè)計之初不必?fù)?dān)心設(shè)計出的軟件如何丑陋,關(guān)鍵在于后期不斷的改進(jìn)和完善,最終設(shè)計出的產(chǎn)品可能與一開始有著巨大的差別。好的軟件設(shè)計首先應(yīng)當(dāng)根據(jù)用戶的需求,制定出一個較為“粗糙”的方案,然后對方案慢慢改進(jìn)完善,逐漸形成一個“完美”的方案。而不是先根據(jù)設(shè)計者的經(jīng)驗設(shè)計出一個較為“完美”的構(gòu)思,然后再對其作些許修改,以達(dá)到追求的效果。前一種方式注重循序漸進(jìn)的過程,具有一定的靈活性;而后一種方式則是急于求成,可進(jìn)一步優(yōu)化的空間較小。增加新的功能與改善現(xiàn)有設(shè)計應(yīng)當(dāng)輪流進(jìn)行。在增加新功能時,應(yīng)當(dāng)充分信任已有代碼的準(zhǔn)確性,關(guān)注于新功能測試用例以確保測試用例的正確性,同時對代碼進(jìn)行適當(dāng)?shù)膭h改,進(jìn)而使所有的測算用例通過。在改善現(xiàn)有設(shè)計時,用現(xiàn)有的測試用例便能快速準(zhǔn)確的驗證這種修改的正確性。
1.3軟件的設(shè)計與實現(xiàn)須始終面向代碼
編碼是軟件設(shè)計中最真實和最有價值的部分。在編碼之前,所有的設(shè)計都只是沒有現(xiàn)實意義和不被認(rèn)可的空想。很多構(gòu)思“完美”的預(yù)設(shè)計由于輕視了代碼的實現(xiàn)過程,造成“化神奇為腐朽”的后果。因此在進(jìn)行軟件設(shè)計過程中應(yīng)當(dāng)始終把編碼放在一個十分重要的位置,一旦有什么好的構(gòu)思,就應(yīng)當(dāng)立馬用代碼將其表達(dá)出來,并驗證該代碼的準(zhǔn)確性與系統(tǒng)相容性。
二、計算機(jī)軟件設(shè)計的方法
計算機(jī)軟件是根據(jù)一定的規(guī)格和說明設(shè)計的,通過設(shè)計確定測試點、程序結(jié)構(gòu)和限制等。下面主要介紹幾種較為常見的軟件設(shè)計方法。(1)結(jié)構(gòu)化程序設(shè)計。軟件的結(jié)構(gòu)對軟件的設(shè)計有著十分重要的意義。擁有良好結(jié)構(gòu)的程序易于編寫、檢查和維護(hù)。該方法在程序的設(shè)計時根據(jù)用戶的需求從系統(tǒng)功能入手,首先按功能將應(yīng)用系統(tǒng)劃分為不同的子系統(tǒng),接著再按功能將子系統(tǒng)劃分為許多相對獨立的模塊,并分別提出各自的說明和要求,同時還要注明它們?nèi)绾闻c程序中的其余部分接口。對結(jié)構(gòu)化程序設(shè)計是一種“由上而下、由大到小”的設(shè)計方法,采用的是“獨立功能,單出、入口”的模塊結(jié)構(gòu)。(2)面向?qū)ο蟮某绦蛟O(shè)計。面向?qū)ο蠹夹g(shù)是在解決具體的問題時從具體的實例著手,尋求問題系統(tǒng)中的實體,然后研究每一個實體的屬性、功能和特征,進(jìn)而形成對象類之間的結(jié)構(gòu)層次,最終形成一個完整的軟件系統(tǒng)。面向?qū)ο蟪绦蛟O(shè)計有三個重要的特征,即封裝性、繼承性和多態(tài)性。封裝性是指數(shù)據(jù)及對其操作的一體化,繼承性是指一個類繼承其基類的屬性與操作,多態(tài)性是指類等級的各層中共同享用一個函數(shù)的名字。面向?qū)ο笤O(shè)計方法適合于開發(fā)以Windows為平臺的應(yīng)用程序,隨著Windows的廣泛應(yīng)用與DOS退出微機(jī)操作系統(tǒng),它必將逐漸取代結(jié)構(gòu)化程序設(shè)計而占據(jù)主導(dǎo)地位。(3)“自頂向下設(shè)計”法。該方法是處理分層問題最為有效的技術(shù)方法。它以系統(tǒng)功能的最抽象描述作為最高層次,并由此出發(fā)設(shè)計出一系列詳細(xì)的子系統(tǒng)。由這一系列子系統(tǒng)去完成較高層次的功能,再以子系統(tǒng)為基礎(chǔ)設(shè)計出一系列更為詳細(xì)的子系統(tǒng)。自頂向下設(shè)計方法的價值在于它能夠指出復(fù)雜程度不同的處理層次,并且各種設(shè)計要素之間具有較為清楚的關(guān)系。
三、結(jié)束語
計算機(jī)包括硬件和軟件兩部分。計算機(jī)軟件開發(fā)技術(shù)的發(fā)展推動了計算機(jī)的普及應(yīng)用,同時也開發(fā)出了大量界面友好、操作便利、功能完善的系統(tǒng)和應(yīng)用軟件。本文闡述了軟件設(shè)計和實現(xiàn)過程中應(yīng)當(dāng)遵循的一些原則以及軟件設(shè)計的三種方法,希望能夠給軟件的開發(fā)者提供一些有益的啟迪和參考。
參考文獻(xiàn)
[1]熊吉春,鄔長安.計算機(jī)軟件設(shè)計方法的探討.信陽師范學(xué)院學(xué)報,1999,第3期
[2]黃會雄,陳開文.軟件可靠性設(shè)計研究與應(yīng)用.山西電子技術(shù),2004,第4期