複製鏈接
請複製以下鏈接發送給好友

複用性

鎖定
複用性,指的是可以多次使用的特性。對於代碼來説複用性就是一種框架式結構,通過高度的抽象,讓你的代碼能適應更多種的情況,完成更多種情況的任務,這就是代碼的複用性。
中文名
複用性
外文名
Reusability
傳統的複用
代碼的剪貼複用、數據結構的複用

複用性複用的重要性

複用的好處:
1.較高的生產效率。(以及隨之而來的成本降低)
2.較高的軟件質量。(錯誤可以更快的被糾正)
3.恰當的使用複用可以改善系統的可維護性。

複用性傳統的複用

1、代碼的剪貼複用:最初步的複用,每塊代碼分散在各處,獨立的演變,仍需要針對每一塊修改和測試。這種複用帶來的好處很有限。
2、算法的複用:在已有的成熟算法中選擇一個比自己重新開發一個好的多。比如排序算法。這就是算法的複用。
3、數據結構的複用:
比如隊列、棧、鏈表,在實踐中得到了大量的應用。
傳統的複用種類各有優點也有各自的缺陷。(LY注:有哪些優勢和缺陷呢?)

複用性與可維護性關係

傳統複用方案的致命缺陷是複用常常以破壞可維護性為代價的。
因此我們要支持可維護性的複用,即在保持甚至提高系統的可維護性的同時,實現系統的複用。(LY注:舊有複用方式的缺陷是為了複用破壞了可維護性,或者説支持那些維護性差的複用。歸根到底是因為,將不應該複用在一起的東西複用在了一起。設計上就出現了混亂。良好的設計不應該出現這種後果。而我們僅考慮支持可維護性的複用。將相關的東西放在一起,不相關的部分即使看似相同可以複用,也不能這樣做。因為這種可複用其實是偶然的,以後系統一旦變化,這種所謂的“相同”就消失了。不知道我這個理解是否正確。)

複用性面向對象設計

面嚮對象語言中,語言具有的良好特性,使得細節的複用變得簡單成熟而不再是重點。複用的重點在於帶有商業邏輯的抽象層次上。這是提高複用性同時保持和提高可維護性的關鍵。
抽象層次應是較為穩定的,是複用的重點。抽象層次的模塊相對獨立於具體層次。這樣具體層次內部的變化就不會影響到抽象層次,抽象層次的模塊複用會較為容易。
面向對象設計中,可維護性複用以設計原則和設計模式為基礎。