軟件測試再說面向對象 軟件測試工具
關鍵字:面向對象 OOP
如果你采用了或者考慮采用面向對象編程(OOP)技術,那么你至少應該弄清楚OOP到底具備什么含義、為什么要采用OOP技術。下面我提出一些你應該了解的有關技術術語,同時談談這些概念對你的解決方案而言所具備的意義。
為什么要使用OOP?
對象概念對軟件解決方案具有莫大的好處,在設計優秀合理的情況下尤其如此。你可以只編寫一次代碼而在今后反復重用,而在非OOP的情況下你則多半要在應用程序內部各個部分反復多次編寫同樣的功能代碼。所以說,由于面向對象編程減少了編寫代碼的總量,從而加快了開發的進度同時降低了軟件中的錯誤量。
用來創建對象的代碼還可能用于多個應用程序。比方說,你的團隊可以編寫一組標準類來計算你的可用資源,然后用這些代碼在所有需要同類對象的解決方案中創建對象,比如客戶定單接口、股票價值報表和發給銷售隊伍的通知等等。
OOP的另一優點是對代碼結構的影響。像繼承之類的面向對象概念通過簡化變量和函數的方式而便利了軟件的開發過程。OOP可以更容易地在團隊之間劃分編碼任務。同時,由于采用OOP,辨別子類代碼的依附關系也變得更簡單了(比如說繼承對象的代碼)。此外,軟件的測試和調試也得以大大簡化。
但是OOP也存在一些固有的缺點。假如某個類被修改了,那么所有依賴該類的代碼都必須重新測試,而且還可能需要重新修改以支持類的變更。還有,如果文檔沒有得到仔細的維護,那么我們很難確定哪些代碼采用了父類(被繼承的代碼)。假如在開發后期發現了軟件中的錯誤,那么它可能影響應用程序中的相當大部分的代碼。
面向對象編程在編程思想上同傳統開發不同,需要開發人員轉變傳統開發中所具備的慣性思維方式。對一個有經驗的OOP開發隊伍來說,采用OOP的好處是顯而易見的。如果你正在考慮轉向OOP,那么你必須保證已經擁有了富有經驗的主要開發人員能負責地檢查軟件中的缺陷和體系結構。
下面我們就看看OOP技術到底能為你做些什么;了解了解有關的概念和術語。
對象定義
對象是建立面向對象程序所依賴的基本單元。用更專業的話來說,所謂對象就是一種代碼的實例,這種代碼執行特定的功能,具有自包含或者封裝的性質。這種封裝代碼通常叫做類、對象類或者模塊或者在不同編程語言中所應用的其他名稱。以上這些術語在含義上稍微有些不同,但它們都是代碼的集合。
正如我上面提到的那樣,對象本身是類或者其他數據結構的實例。這就是說,現有的物理代碼起到了創建對象的模版作用。執行特定功能的代碼只需要編寫一次卻被引用多次。每一種對象具有自己的標識,也就是令對象相互區別的對象名稱。
對象并不是類的實際拷貝。每一對象都有自己的名稱空間,在這種名稱空間中保存自己的標識符和變量,但是對象要引用執行函數的原有代碼。 “封裝”的對象具有自己的函數,這種函數被稱作“方法”,而對象的變量則被稱為屬性。當對象內部定義了屬性的時候,它們通常不能擴展到實例以外。假設我現有一個類叫vegetable(蔬菜),同時又創建了兩個對象實例 carrot(胡蘿卜)和 celery(芹菜),那么我給carrot設置的值就不會影響到celery內部的值。vegetable自身內部的變量卻永遠不會得到定義,因為vegetable類只是一種模版。
文章來源于領測軟件測試網 http://www.kjueaiud.com/