可測試的 JavaScript Ch2 複雜度(下)
扇出與扇入
扇出 Fan-out
扇出的定義是一個函式的內部流數目加上該函式更動到的全域資料數目
以下狀況都可以被算作是函式A的內部流:
- A 呼叫 B
- B 呼叫 A ,且 A 回傳一個值、B 會利用這個值
- C 呼叫 A 和 B ,並把 A 的輸出值傳給 B
扇出的定義是一個函式的內部流數目加上該函式更動到的全域資料數目
以下狀況都可以被算作是函式A的內部流:
雖然完全精確測量程式複雜度的方法是不存在的,但有幾個重要的指標能夠測量出部分的程式複雜度:
⋯⋯等等可以測量出部分的程式複雜度。使用這些項目去檢視自己的程式碼,是建立可測試的程式的良好開始。