軟體結構

軟體結構(Software Structure)是指一種層次表況,由軟體組成成分構造軟體的過程、方法和表示。軟體結構主要包括程式結構和文檔結構。程式結構有兩層含義,一是指程式的資料結構和控製結構;另一是指由比程式低一級的程式單位(模組)組成程式的過程、方法和表示。在後者含義下,具有代表性的是塊結構和嵌套結構兩種。塊結構比較自然,各個部分之間通過一些公用變數取得聯系,嵌套結構是在嵌套分程式的基礎上引進局部性和動態性,以減少程式的初始信息量,嵌套結構不如塊結構直觀,調試不方便。

  • 中文名稱
    軟體結構
  • 外文名稱
    Software Structure
  • 組成成分
    構造軟體的過程、方法和表示
  • 主要包括
    程式結構和文檔結構

簡介

所謂模組,是指具有相對獨立性的,由資料說明,執行語句等程式對象構成的集合。程式中的每個模組都需要單獨命名,通過名字可實現對指定模組的訪問。在高級語言中,模組具體表現為函式,子程式,過程等,一個模組具有輸入/輸出(接口)、功能、內部資料和程式代碼四個特征。輸入/輸出用于實現模組與其他模組間的資料傳送,即向模組傳入所需的原始資料及從模組傳出得到得到結果資料。功能指模組所完成的工作。模組的輸入/輸出和功能構成了模組的外部特征。內部資料是指僅能在模組內部使用的局部量。

有些程式是單模組結構,有些是多模組結構。這些模組在程式的邏輯上是不可分離的,可以用不同的程式語言編寫,可以由相應的編譯程式分別編譯,可以和其它的程式單位組合並裝入電腦內運行。由于編寫大程式的需要,且模組可以多次使用,實行模組化是一個很好的手段。 由一組模組組成的大型程式可有三種結構,即順序結構、並發結構和分布結構。順序結構的程式是最古老的,所採用的程式語言是順序程式語言,如ALGOL、FORTRAN、C等。並發結構的程式由若幹個可以同時執行的模組組成。這些模組可以在多台處理機並行執行,也可以在同一台處理機上交叉執行,所採用的程式語言是並發程式設計語言,如並發PASCAL、Modula-2等。分布結構的程式由若幹個可獨立運行的模組組成,這些模組可以分布于一個分散式系統中,在幾台電腦上同時運行,所採用的程式語言分散式程式設計語言。對于大型程式,也可以是這三種結構的混合。

原則

規則

(1)模組功能的完善化

執行規定功能部分;出錯處理部分;需返回給調用者資料時,返回是否正確結束標志。

(2)消除重復功能

(3)將模組的影響限製在模組的控製範圍內

(4)深度、寬度、扇出和扇入適中

(5)模組大小適中

模組過大:可理解程度下降。模組過小:開銷大于有效作業系統接口復雜。

(6)降低模組接口的復雜性

接口傳遞信息應簡單且和模組功能一致。

(7)模組功能可預測

模組看成黑盒子,相同輸入產生相同輸出,其功能為可預測的。模組帶有內部狀態其功能可能是不可預測的。難理解、難測試、難維護。

(8)避免模組的病態連線

防止指向模組中間的分支或引用(針對內容耦合)。

(9)根據設計約束和可移植性要對軟體打包

打包指用來為特定環境組裝軟體的技術。

目錄結構清楚

目錄結構清楚,不宜過深,復雜,路徑最好用相對地址

什麽樣的目錄放什麽樣的內容,這樣便于管理,使WEB程式的目錄結構,清楚明了,一看便知道某個資料夾下存儲了哪些功能模組與內容。若隨便存放,時間一長久自己都將不從了解某目錄是用來做什麽的。如:經常要使用的執行檔最要存放在(項目根目錄)根目錄,這樣做主要是便于了解其作用,同時也為在程式中少輸入些地址字元。程式所用到的圖片統一存放在根目錄下images目錄中,若項目較大,分枝較多,可再在其目錄下建立也分枝程式相關的目錄名,存儲相關的圖片內容。程式的配置檔案與常用共公函式類庫存放在include目錄中,存放在此目錄下的函式類庫檔案擴展名得命名為:.php切不命名為.inc .ini之類為擴展名的檔案,主要是防此此類檔案可供使用者下載,或查閱其源碼內容,這樣對其調用方便明確。模板檔案應存儲在根目錄下templates目錄中,擴展名為.html,如果項目較大,分類較多,模板檔案可分類存放在下極目錄中。臨時檔案存儲在根目錄tmp目錄中,此目錄通常設定為任何人都可讀可寫。使用相對地址主要是方便程式移植。

命名適當

命名最好是以程式用來作什麽用來命名。若一個單詞就要描述則用小寫單詞來命名,若要用多個單詞方能代表,也以小寫單詞之間加下劃線連線。要註意命名不可過長,這樣就不方便了,雖然能表達的更明確,但打字難打啊。程式中函式命名也可與此相同。

常變內容、介面使模板較好

常變內容、介面使用模板較好,如果是按照傳統的製作將HTML頁面內容放在程式中處理輸入時,較麻煩非得要變更程式不可,這可能會帶來較大的不便。

共公信息統一存儲

共公信息統一存儲,這主要為了方便團隊開發時都能進行調用用的最常的函式,不用每個開發人員都復製一份或自己寫一份存儲在程式檔案中,這樣做浪費空間同時效率效果也不好。

Include檔案不可嵌入較多

Include檔案不可嵌入較多,這是因為每次程式include某個檔案時,是要開啟讀取這個檔案的,這是要時間的喔,再就是說處理路徑時可能會遇到較難發現的BUG問題。

目錄下不可存儲太多內容檔案

如果檔案較多較大時最好是分目錄分盤符來處理。

資料結構要設計合理

資料結構要設計合理、精簡明了。

資料校驗應在伺服器端

資料校驗應在伺服器端,但這樣做也有他不好之處,那就是當資料量大時,伺服器會負載運行,審核資料完整性是可開銷時間與系統資源的。在客戶端就不會佔用伺服器太多的資源,因為佔用的是使用者的資源。

連線資料庫近晚,下線近早

盡晚連線,盡早下線,能使佔用系統資源最少,為下一次連線提供條件。

盡量少使用SESSION與COOKIE

盡量少使用SESSION與COOKIE,因為使用SESSION是要佔用系統資源的,SESSION是存儲在伺服器端的,每次讀取SESSION中的資料是要較大開銷的。COOKIE雖然不佔用伺服器資源,但COOKIE不太安全。

相關詞條

相關搜尋

其它詞條