在現實的大多數專案中,我們都在考慮著軟體重用的問題,因為這是在軟體開發中無法避免的乙個很現實的問題,也是乙個很讓人的頭疼的問題。下面是我對軟體重用的非常個人的理解,僅作參考。
軟體重用可分為兩個層次,乙個層次是設計上的重用,另外乙個層次是**級的重用,而**級的重用上又可分細分為兩個層次,乙個是基於源**的重用,另外乙個是基於元件的重用。
無論是以往的瀑布型開發模式還是現在比較流行的敏捷開發,無不體現了「設計先行」的觀點,雖然敏捷更注重**,但是也還是強調簡單設計。設計上的重用往往體現在對乙個事物或領域的知識的重用。比如我們設計了乙個排版系統,我們希望重用的可能就是其中的排版規則以及和排版領域相關的核心概念,不同的排版系統都可重新利用這些核心規則和概念建立其自己的系統。因為這種重用方式非常抽象,因此它的重用度是最高的,與此同時也是最難的。mda就突出地強調了在設計層面的重用。
其實,在現實的專案中,我們提到的重用往往都是**級的重用。不同的平台對於重用的觀點上是不一樣的,com和.net平台更多地是強調元件級的重用,而stl更多地是強調原始碼級的重用。兩者沒有孰優孰劣的說法,在不同的專案中兩者都各有千秋。
但是原始碼級重用的乙個最大的缺點就是它被程式語言所約束,比如說stl**就只能被c++程式所使用。而基於元件的重用就有所不同,.net強調了平台的統一,因此c#編寫的乙個元件就可被vb.net或vc++/cli程式所復用。從這個角度來說,.net更多地強調的元件級的重用,因此元件級的重用要求平台的統一。目前.net就實現了不同的程式語言架構在同乙個平台上,那就是cli,如c++/cli、python/cli等。
微軟從com到
.net
軟體重用評述
軟 件重用是指在兩次或多次不同的軟體開發過程中重複使用相同或相似軟體元素的過程。軟體元素包括程式 測試用例 設計文件 設計過程 需要分析文件甚至 領域知識。對於新的軟體開發專案而言,它們或者是構成整個目標軟體系統的部件,或者在軟體開發過程中發揮某種作用。通常將這些軟體元素稱為軟部件。為了能夠在軟體開...
軟體重用 復用
11.3 軟體重用 11.3.1 概述 1.重用 重用也叫再用或復用,是指同一事物不作修改或稍加改動就多次重複使用,廣義地說,軟體重用可分為以下3個層次 1 知識重用 例如,軟體工程知識的重用 2 方法和的標準的重用 例如,物件導向方法或國家制定的軟體開發規範的重用 3 軟體成分的重用 前兩個重用層...
關於執行緒的重用
關天重複呼叫執行緒的問題 class thread extends threadelse soapobject來儲存返回的資料 detail gws.getweather city catch exception e finally 啟動執行緒.只需要 thread th th new thread...