• <dd id="in9we"></dd>
    1. <th id="in9we"><track id="in9we"><video id="in9we"></video></track></th><strike id="in9we"></strike>

    2. <th id="in9we"></th>

          <rp id="in9we"><ruby id="in9we"><input id="in9we"></input></ruby></rp>
          <button id="in9we"><acronym id="in9we"></acronym></button>
          <tbody id="in9we"><track id="in9we"></track></tbody> <span id="in9we"><pre id="in9we"></pre></span>
        1. <tbody id="in9we"><pre id="in9we"></pre></tbody>
        2. <th id="in9we"><track id="in9we"><dl id="in9we"></dl></track></th>
            <th id="in9we"></th>
            <rp id="in9we"></rp><span id="in9we"><pre id="in9we"></pre></span>
          1. <rp id="in9we"><acronym id="in9we"></acronym></rp>

            <tbody id="in9we"><pre id="in9we"></pre></tbody>

            <button id="in9we"></button>

          2. <rp id="in9we"></rp>

              • 管理團隊(一)
              • 您當前所在位置:首頁 > 管理團隊專輯 > 管理團隊(一)
              我的反省
              文章來源中財欽才     作者陳才     日期2020-07-14     點擊量1383

              設計的藝術

              故宮太和殿,米蘭大教堂,造型各異,但我們都覺得很美,這是因為這些建筑都有一些共同的優秀結構。這些共同的結構,如果用專門的可以度量的客觀標準來評價,就叫做模式。繼而展開到人類社會,模式可以歸納為,描述會不斷重復出現的問題并進而提供解決這些問題的方案的要素。通過模式,解決方案能夠千百萬次地反復應用。

              程序員們把這種模式的思想應用于軟件設計——稱為設計模式( design pattern)。于是在程序設計中的設計模式有了建筑學中的相同的作用:

              1. 復用解決方案——通過復用已經公認的設計,能夠在解決問題時取得先發優勢,而且避免重蹈前人覆轍。可以從學習他人的經驗中獲益,用不著為那些總是會重復出現的問題再次設計解決方案了

              2. 多數設計模式還能使軟件更容易修改和維護。其原因在于,它們都是久經考驗的解決方案。所以,它們的結構都是經過長期發展形成的,比新構思的解決方案更善于應對變化。而且,這些模式所用代碼往往更易于理解——從而使代碼更易維護

              3. 模式還為我們提供了觀察問題、設計過程和面向對象的更高層次的視角,這將使我們從“過早處理細節”的桎梏中解放出來

              以前學習設計模式的時候,很大程度上只停留在理論上,對應有些模式的應用也只是約定俗成,沒有很強的理解和觸碰心靈的體會,直到最近遇到的麻煩。比如Fa?ade模式,中文叫做面板模式,就是把許多接口放在一個文件里面,程序里其他需要用到接口的地方,都調用這個文件里面的方法。非常簡單的一個模式,似乎對它不肖一顧,因為過于簡單,甚至覺得可以刪去不用了,直到最近需要更改大量的數據接口,才意識到應用設計模式的重要性,尤其是上述第2點。

              感謝設計模式

              因為深受學院派作風的影響,所以當初寫集成量化平臺的時候,引入了大量的設計模式,也包括了這個Fa?ade模式。這個模式包含了所有的數據訪問接口,其他模塊諸如持倉,交易,報表,回測等等都只跟Fa?ade打交道,至于數據訪問的實現,其他模塊甚至Fa?ade本身都是不清楚的。這就是抽象和解耦,用現在時髦的話來說就是隔離。因為有了隔離,數據訪問如果出現了問題,并不會直接影響到邏輯層面的代碼,可以說一點都沒有影響。所以,如果因為數據提供商的問題或者數據源不穩定,需要切換數據源或者重新實現數據訪問方法,所有的改動只有在數據訪問層。而所有用到數據接口的其他大面積的邏輯層面,沒有一丁點的改動。這大大增加了系統建設升級的效率,顯著提高了代碼的健壯性和韌性。這就是fa?ade模式的好處,因為簡單,所以可以說四兩撥千斤,真不知道如果沒有fa?ade層,邏輯應用方面直接跟數據打交道,那么這場數據接口改動能不能快速的完成,甚至是否能成功都是個問題。可以說這次的代碼重構,大大加深了我對設計模式的理解,可謂實踐出真知。

              項目

              繼續倡導敏捷開發實踐,增加測試驅動開發(TDD)和scrum的經驗。

              以上文字權為反省。


              版權所有 © 中財招商投資集團
              黄色视频在线观,亚洲旡码A∨一区二区三区丨,亚洲永久精品ww 47,男女男精品免费视频站久