關鍵字:oo 在回答這個問題前,我們先來看一看MVC。MVC是現在大家都很熟悉的設計模式。那么到底什么是MVC呢?下面是Wikipedia關于MVC的解釋:Model-View-Controller (MVC) is a software architecture that separates an application's data model, user interface, and control logic into three distinct components so that modifications to the view component can be made with minimal impact to the data model component. 翻譯過來就是:MVC是一種將應用的數據模型、用戶界面(視圖)以及控制邏輯分解到不同組件中的軟件構架。這種分解可以使得視圖組件的細修改對數據模型只會產生很小的影響或者根本不產生影響,
在思考問題的時候,我喜歡跳出問題來看問題,在跨越時間甚至跨越領域的大跨度類比中不斷完成思想的升級及重構;氐角懊娴膯栴}。在軟件開發分析設計方法上,一以貫之的其實就是一種類似于MVC的思想:對問題域不斷進行重構,使得一種數據(不要狹隘的看待數據,信息、規則、動作,一切都可以被看作是數據)、該數據的管控邏輯、以及該數據的使用者( 不一定是UI,UI只是特例)能夠被區分開來。從這個角度來看待軟件開發領域的一切,你就會發現,一切都在改變,一切也都沒有改變。我們只是為我們一以貫之的方法找到了的應用發領域。如此而已。再簡化一點,實質上,一切軟件設計方法的突破都是在于指明新的邏輯聚合方向,建立了新的邏輯聚合方法。OO如此,AOP如此,設計模式如此,一切都是如此。
5)只有一些很特定的情況不適用OO + N-Tier。
當然不是所有場合都必須或者適用OO + Np-Tier,因為二者的引入無疑會在某些方面增加成本,因此我們必須考慮我們付出的時候會得到什么,我們得到的時候又會失去什么?權衡——這實際上也是我們做一切事情的最基本思路,而不只是針對軟件開發。
大家可以自己權衡何時使用OO + N-Tier。下面是我認為不適合的一些場合:
a)太簡單的應用,寫起來沒幾句代碼,使用OO + N-Tier根本不值得
b)已經有一套很接近目標系統的原型系統,暫時沒有必要使用OO + N-Tier,因為成本不合算
c)開發人員完全不知道該怎么使用OO + N-Tier,教育成本不低,暫時不建議使用
d)實時、密集信息處理,其處理過程非常簡單,連判斷都很少,使用OO + N-Tier根本沒必要
文章來源于領測軟件測試網 http://www.kjueaiud.com/