• <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)

            我參與的團隊

            搜索

            •  

            積分與排名

            • 積分 - 72471
            • 排名 - 322

            最新評論

            閱讀排行榜

            評論排行榜

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

                


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

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

            習題:

            (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 閱讀(215) 評論(0)  編輯 收藏 引用
            久久se精品一区精品二区国产 | 亚洲精品无码久久久久久| 欧美性猛交xxxx免费看久久久| 久久香蕉一级毛片| 亚洲国产精品综合久久一线| 久久久www免费人成精品| 区久久AAA片69亚洲| 国产成人久久精品激情| 久久99精品久久久久久齐齐| 欧美午夜精品久久久久免费视| 久久国产乱子伦精品免费强| 久久国内免费视频| 国产亚洲美女精品久久久| 精品久久久中文字幕人妻| 91久久成人免费| 无码人妻精品一区二区三区久久 | 久久综合视频网| 日韩亚洲欧美久久久www综合网| 亚洲精品午夜国产va久久| 久久天天躁狠狠躁夜夜网站| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 性做久久久久久久久久久| 久久久久久亚洲Av无码精品专口| 精品久久人人妻人人做精品| 国产综合久久久久| 精品国产99久久久久久麻豆| 久久久久亚洲?V成人无码| 国产精品久久波多野结衣| 热re99久久精品国99热| 青青草原综合久久大伊人| 亚洲人AV永久一区二区三区久久| 国产精品狼人久久久久影院| 色综合久久精品中文字幕首页| 欧美亚洲另类久久综合婷婷| 色8激情欧美成人久久综合电| 国产精品成人无码久久久久久| 国产国产成人精品久久| 欧美日韩中文字幕久久伊人| 久久亚洲国产精品一区二区| 久久久青草久久久青草| 亚洲精品高清久久|