• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            COOOOOOOOL

            從固有的原則出發,向著目標誠直前進.所以這樣的行為便名為正當的行為,表示其為尋著正路而行的.

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              26 Posts :: 0 Stories :: 21 Comments :: 0 Trackbacks

            公告

            QQ:774262464 email:cooooooool.2010@gmail.com

            常用鏈接

            留言簿(3)

            我參與的團隊

            搜索

            •  

            積分與排名

            • 積分 - 72957
            • 排名 - 323

            最新評論

            閱讀排行榜

            評論排行榜

            如果你想要制作易于設計、構建、測試及擴展的系統,正交性是一個十分關鍵的概念,但是,正交性的概念很少被直接講授,而常常是你學習的各種其他方法和技術的隱含特性。這是一個錯誤。一旦你學會了直接應用正交性原則,你將發現,你制作的系統的質量立刻就得到了提高。
             
            什么是正交性:

                


              “正交性”是從幾何學中借來的術語。如果兩條直線相交成直角,它們就是正交的,比如圖中的坐標軸。用向量術語說,這兩條直線互不依賴。沿著某一條直線移動,你投影到另一條直線上的位置不變。

              在計算技術中,該術語用于表示某種不相依賴性或是解耦性。如果兩個或更多事物中的一個發生變化,不會影響其他事物,這些事物就是正交的。在設計良好的系統中,數據庫代碼與用戶界面是正交的:你可以改動界面,而不影響數據庫;更換數據庫,而不用改動界面。

            習題:

            (1). 你在編寫一個叫做Split的類,其用途是把輸入行拆分為字段。下面的兩個Java類的型構(signature)中,哪一個是更為正交的設計?

            1. class Split1 {  
            2.   public Split1(InputStreamReader rdr) { ...  
            3.   public void readNextLine() throws IOException { ...  
            4.   public int numFields() { ...  
            5.   public String getField(int fieldNo) { ...  
            6. }  
            7. class Split2 {  
            8.   public Split2(String line) { ...  
            9.   public int numFields()     { ...  
            10.   public String getField(int fieldNo) { ...  
            11. }

            答:我們的看法是,Split2更為正交。它專注于自己的任務,拆分輸入行,同時忽略輸入行來在何處這樣的細節。這不僅是代碼更易于開發,也使得代碼更靈活。Split2拆分的行可以來自文件、可以由另外的例程生成、也可以通過環境傳入。

            (2). 非模態對話框或模態對話框,哪一個能帶來更為正交的設計?

            答:如果設計正確,很可能是非模態對話框。使用非模態對話框的系統與任一特定時刻正在發生的事情的關聯較少。它很可能會擁有比模態系統更好的模塊間通信基礎設施,模態系統對系統的狀態可能會有內在的假定——導致耦合增加、正交性降低的假定。

            (3). 過程語言與對象技術的情況又如何?哪一種能產生更為正交的系統?

            答:這個問題有點棘手。對象技術可以提供更為正交的系統,但因為它有更多的特性可被濫用,使用對象技術實際上比使用過程語言更容易創建出非正交的系統。像多重繼承、異常、操作符重載、父方法重定義(通過定義子類)這樣的特性提供了通過不明顯的途徑增加耦合的充足機會。

            posted on 2009-12-16 15:43 COOOOOOOOL 閱讀(223) 評論(0)  編輯 收藏 引用
            人妻无码精品久久亚瑟影视| 久久无码国产专区精品| 亚洲国产精品久久| 国产—久久香蕉国产线看观看| A级毛片无码久久精品免费| 久久久WWW成人| 中文字幕乱码人妻无码久久| 色噜噜狠狠先锋影音久久| 污污内射久久一区二区欧美日韩| 久久久老熟女一区二区三区| 91精品日韩人妻无码久久不卡| 区亚洲欧美一级久久精品亚洲精品成人网久久久久| 亚洲国产日韩欧美久久| 国产成人精品久久二区二区| 伊人久久大香线蕉精品不卡| 亚洲精品高清久久| 久久久久久亚洲精品影院| 一级做a爰片久久毛片人呢| 久久综合给久久狠狠97色| 少妇人妻综合久久中文字幕| 国产亚洲美女精品久久久| 精品久久久久久久| 无码久久精品国产亚洲Av影片| 欧美日韩成人精品久久久免费看 | 国内精品久久久久伊人av| 久久综合九色欧美综合狠狠| 香蕉久久夜色精品国产小说| 99久久精品国产麻豆| 精品久久久久久无码中文字幕一区| 久久婷婷国产剧情内射白浆| 亚洲精品久久久www| 欧美粉嫩小泬久久久久久久| 国产成人精品久久一区二区三区av| 青青草原综合久久大伊人精品| 国产精品久久久久无码av| 久久91精品国产91久久小草| 精品999久久久久久中文字幕| 久久精品一区二区三区不卡| 日韩精品国产自在久久现线拍| 免费国产99久久久香蕉| 久久久久亚洲精品无码网址 |