可復用性 Reusability

2021-10-05 11:14:44 字數 788 閱讀 4070

1.2模組:類和介面

1.3庫:api

1.4架構: 框架framework

2.可重用性的外部表現

可復用性是軟體構造過程中乙個重要的外部質量指標。對經過充分測試的程式進行復用可以利用其高可靠性、穩定性、適應性,並可降低成本以及開發時間。

源**可見,直接複製並進行修改。

需要對源**內部結構、設計思路充分了解

源**不可見,只能通過api介面使用

繼承inheritance與重寫override

委託delegation

我們經常使用的jdk庫libraries、apis及其他第三方庫(如apache)均為復用。

框架包含具體類、抽象類及它們之間的連線關係,可以執行;開發者根據規約需要,在框架預留的介面位置填充所需**形成完整系統

同樣存在白盒框架及黑盒框架兩種

利用泛型來適應不同的型別

抽象資料型別adt有多種不同的實現,但滿足的規約specification (pre-condition, post-condition, invariants)相同,可以達到相同的效果

在保證完整實現具體功能的同時將不同功能分開實現,在不同需求下復用不同的功能並進行組合

個人理解:與物件導向設計原則oo design principles其一的 " solid " 原則中的單一責任原則(srp — the single responsibility principle)有相似之處

對內部**實現進行修改並不影響客戶端,同時實現資訊隱藏

把具有相同行為的內容或物件抽象出來形成可復用實體,如父類或抽象類

軟體的可復用性

軟體復用就是利用已有的軟體元件來實現或更新新的軟體系統。軟體復用可以大幅度的節省新軟體的開發時間和開發成本。譬如,如果你想造一輛超級跑車,那麼給你法拉利,邁 的圖紙,會不會感覺任務變得更輕鬆了呢。軟體復用讓我們的任務由從0到1簡化成了從1到2,這就是乙個質的飛躍。畢竟我們都知道,改進遠比創造要容易的...

軟體的可維護性和可復用性

軟體的復用 reuse 或重用擁有眾多優點,如可以提高軟體的開發效率,提高軟體質量,節約開發成本,恰當的復用還可以改善系統的可維護性。物件導向設計復用的目標在於實現支援可維護性的復用。在物件導向的設計裡面,可維護性復用都是以物件導向設計原則為基礎的,這些設計原則首先都是復用的原則,遵循這些設計原則可...

軟體構造 可復用性 Strategy模式

問題 針對特定任務存在多種演算法,呼叫者需要根據上下文環境動態的選擇和切換。strategy模式 定義乙個演算法的介面,每個演算法用乙個類來實現,客戶端針對介面編寫程式。圖示如下 stategy介面 演算法介面 concretestategya類 具體演算法a concretestategyb類 具...