原創:bighead
迪公尺特法則,law of demeter,是指乙個軟體實體(模組,類,函式)應當盡可能少的不其他實體發生相互作用。迪公尺特法則又叫作最少知識原則(least knowledge principle),就是說乙個物件應當對其他物件有盡可能少的了解。違反迪公尺特法則可測性的損害體現在,使類不外部的關係變的複雜,不僅要和朋友有關係,還會跟朋友的朋友,朋友的七大姑八大姨,甚至朋友的隔壁的二舅的三阿姨的女兒的老公的叔叔的兒子的爺爺的侄子的乾兒子的一條狗扯上關係,這使得構造 mock 物件變得非常困難!不信?看下面的例子:
華為軟體程式設計規範學習 八 可測性
華為軟體程式設計規範學習 八 可測性 8 1 程式設計時要經常注意 的效率 說明 效率分為全域性效率 區域性效率 時間效率及空間效率。全域性效率是站在整個系統的角度上的系統效率 區域性效率是站在模組或函式角度上的效率 時間效率是程式處理輸入任務所需的時間長短 空間效率是程式所需記憶體空間,如機器 空...
可測性是設計方案的必選項
功能性,健壯性等這些特性是系統設計方案中常見的要求和體現。設計出的系統能夠持續執行多長時間,支撐多少的業務併發量,容忍多少種異常業務場景是評價乙個設計人員的設計功力的重要指標。同時我們也越來越多的感受到乙個良好的設計是簡單的,可重用的 高內聚,低耦合 開閉原則 等等一系列的設計指導原則成為設計人員的...
可持久化專題
一切之始主席樹 可持久化並查集 首先可持久化並查集我們是用主席樹來維護的,葉子節點維護每個位置的fa 維護2個量 每個點的父親和每棵樹的根節點的高度。那麼不使用路徑壓縮的話這個版本的主席樹和上個版本的主席樹 有且只有乙個點會被改動。那麼就可以進行可持久化了。既然取消了路徑壓縮,為了保證複雜度,我們需...