軟體復用

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

軟體復用是一種電腦軟體工程方法和理論。20世紀60年代的「軟體危機」使程式設計人員明白難於維護的軟體成本是極其高昂的,當軟體的規模不斷擴大時,這種軟體的綜合成本可以說是沒有人能負擔的,並且即使投入了高昂的資金也難以得到可靠的產品,而軟體重用的思想是解決這一問題的根本方法。[1]

軟體復用的主要思想是,將軟體看成是由不同功能部分的「組件」所組成的有機體,每一個組件在設計編寫時可以被設計成完成同類工作的通用工具,這樣,如果完成各種工作的組件被建立起來以後,編寫一特定軟體的工作就變成了將各種不同組件組織連接體來的簡單問題,這對於軟體產品的最終品質和維護工作都有本質性的改變。

簡介

軟體復用就是將已有的軟體成分用於構造新的軟體系統。[2][3]可以被復用的軟體成分一般稱作可復用構件,[4]無論對可復用構件不加修改直接使用還是修改後再使用,只要是用來構造新軟體,則都可稱作復用。[5]從更大的角度理解,軟體重用也包括應用專案的重用,規格說明(也稱為規約)的重用,設計的重用,概念和方法的重用等等。[6][7]

如果在一個系統中多次使用一個相同的軟體成分,則不稱作復用,而稱作共享;對一個軟體進行修改,使它執行於新的軟硬體平台也不稱作復用,而稱作軟體移植。

作用

軟體重用有助於提高軟體的品質和開發效率,降低軟體的開發和維護成本。[3]

參考

  1. ^ 软件复用技术研究--《北京理工大学学报》1998年06期. www.cnki.com.cn. [2022-08-09]. (原始內容存檔於2020-10-23). 
  2. ^ Frakes, W.B.; Kyo Kang. Software Reuse Research: Status and Future. IEEE Transactions on Software Engineering. July 2005, 31 (7): 529–536. CiteSeerX 10.1.1.75.635可免費查閱. S2CID 14561810. doi:10.1109/TSE.2005.85. 
  3. ^ 3.0 3.1 Lombard Hill Group. What Is Software Reuse?. lombardhill.com. Lombard Hill Group. [22 October 2014]. (原始內容存檔於23 January 2019). 
  4. ^ 4. Code Reuse: Functions and Modules - Head First Python, 2nd Edition [Book]. www.oreilly.com. [2022-01-26]. (原始內容存檔於2022-05-30) (英語). 
  5. ^ Code reuse. DocForge. [2024年5月8日]. (原始內容存檔於2011-07-10). 
  6. ^ 软件工程 - 百度文库. wenku.baidu.com. [2022-08-09]. (原始內容存檔於2022-08-09). 
  7. ^ Colombo, F. It's not just reuse. SharedNow.blogspot. 2011 [2022-08-09]. (原始內容存檔於2022-08-09).