可測試的 JavaScript Ch2 複雜度(下)
扇出與扇入
扇出 Fan-out
扇出的定義是一個函式的內部流數目加上該函式更動到的全域資料數目
以下狀況都可以被算作是函式A的內部流:
- A 呼叫 B
- B 呼叫 A ,且 A 回傳一個值、B 會利用這個值
- C 呼叫 A 和 B ,並把 A 的輸出值傳給 B
扇出的定義是一個函式的內部流數目加上該函式更動到的全域資料數目
以下狀況都可以被算作是函式A的內部流:
雖然完全精確測量程式複雜度的方法是不存在的,但有幾個重要的指標能夠測量出部分的程式複雜度:
⋯⋯等等可以測量出部分的程式複雜度。使用這些項目去檢視自己的程式碼,是建立可測試的程式的良好開始。
有一次聽到「先寫測試再寫程式」覺得太酷了8~就很想成為很會寫測試的人(也就會順便變成很會寫程式!?)。前陣子買了這本書,看了一半覺得有點難XD
所以回頭再讀一次、寫下筆記,更確定自己有讀進去🐣
(前言跟第一章完全沒有程式的部分,讚!)