軟件復用的幾種方式


軟件復用的好處有很多

一、提高工作效率

這條自不必說,比如在項目A中你寫一個Ajax模塊,A完工后啟動了項目B,在B中就可以直接復用項目A的模塊了。一個可復用的軟件可以為將來節省費用,被服用的頻率越高,組件的初始開發成本就越低。

二、提高軟件質量

可復用的軟件總比不能復用的有更多的質量保障。因為可復用的軟件在不斷的復用過程中把一些bug,缺陷都很快的排除了。因此可復用的軟件一定是利於系統的可維護性的。

 

按抽象程度的高低,可以划分為如下的復用級別:

代碼的剪貼復制

利用編輯器(IDE)可以很方便的做到減少抄寫代碼的人力成本。這可能是入門級程序員習慣的,自發的復用軟件的形式。把一個寫好的工具函數自發的拷貝到另一個功能或項目中。這種方式有着明顯的缺點就是他造成很多重復冗余的代碼。尤其在Web前端開發中,JavaScript資源的量大小影響着客戶端下載速度。好一點的復用方式可以采用繼承

 

算法的復用

各種算法比如排序都已經得到了大量的研究。幾乎不需要你重新去寫自己的算法,各種語言通常也實現了這些常用算法。因此你只需要直接復用。

 

數據結構的復用

與算法一樣,類似數組、隊列、棧、列表等得到了透徹的研究,只需要直接復用。

 

以上是傳統的復用種類,下面是更高級的復用方式

設計的復用

設計結果比源程序的抽象級別更高,因此它的復用受實現環境的影響較少,從而使可復用構件被復用的機會更多,並且所需的修改更少。

這種復用有三種途徑,第一種途徑是從現有系統的設計結果中提取一些可復用的設計構件,並把這些構件應用於新系統的設計;第二種途徑是把一個現有系統的全部設計文檔在新的軟硬件平台上重新實現,也就是把一個設計運用於多個具體的實現;第三種途徑是獨立於任何具體的應用,有計划地開發一些可復用的設計構件。

 

分析的復用

這是比設計結果更高級別的復用,可復用的分析構件是針對問題域的某些事物或某些問題的抽象程度更高的解法,受設計技術及實現條件的影響很少,所以可復用的機會更大。復用的途徑也有三種,即從現有系統的分析結果中提取可復用構件用於新系統的分析;用一份完整的分析文檔作輸入產生針對不同軟硬件平台和其它實現條件的多項設計;獨立於具體應用,專門開發一些可復用的分析構件。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM