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

            我參與的團隊

            搜索

            •  

            積分與排名

            • 積分 - 72708
            • 排名 - 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 閱讀(219) 評論(0)  編輯 收藏 引用
            99久久国产宗和精品1上映| 国产美女久久精品香蕉69| 久久免费99精品国产自在现线| 国产成人精品久久一区二区三区av| 青青草国产精品久久久久| 久久国产精品波多野结衣AV| 国产亚洲精久久久久久无码77777 国产亚洲精品久久久久秋霞 | 一本色综合网久久| 91超碰碰碰碰久久久久久综合| 久久久久无码中| 久久精品亚洲中文字幕无码麻豆| 久久精品这里热有精品| 国产成人精品综合久久久| 国产精品免费久久久久久久久 | 国产A级毛片久久久精品毛片| 久久久精品国产sm调教网站| 久久久久这里只有精品| 久久国产一区二区| 精品久久久久久成人AV| 亚洲愉拍99热成人精品热久久| 国产69精品久久久久9999| 丰满少妇高潮惨叫久久久| 亚洲国产精品无码久久九九| 国产三级精品久久| 久久久精品一区二区三区| 97久久超碰国产精品2021| 久久精品午夜一区二区福利| AV无码久久久久不卡蜜桃| 色妞色综合久久夜夜| 亚洲精品乱码久久久久久不卡| 国产精品欧美久久久久天天影视| 久久不射电影网| 久久精品国产99国产精偷| 国内精品久久久久影院免费| 精品国产乱码久久久久久郑州公司| 亚洲午夜久久久影院伊人| 国产A级毛片久久久精品毛片| 久久综合噜噜激激的五月天| 久久久久女人精品毛片| 999久久久无码国产精品| 久久久久久综合一区中文字幕 |