宏觀思維掌握整體目標,微觀思維深入細節。古語「不謀全局者,不足謀一域」道出同理。介面是連結宏觀與微觀的核心。

圖 1:函式實體與其輸入、輸出
函式完成特定功能,介面定義其輸入、輸出與功能語意。介面不變時,實作細節與應用端可獨立演進,達成解耦。
// 實作 1:迴圈累加
int multiply(int a, int b) {
int result = 0;
for (int i = 1; i <= b; i++) result += a;
return result;
}
// 實作 2:直接乘法指令
int multiply(int a, int b) { return a * b; }
兩者介面相同(輸入兩 int,回傳 int),應用端呼叫 multiply(2,3) 無感知。效能不足時替換實作 2,應用碼無需修改,重新編譯即可。
關鍵:功能一致、介面前後一致;實作可因時制宜。
open/read/write/close 統一介面,應用層無須區分硬碟、隨身碟、網路檔案系統。
圖 2:網路分層示意
各層僅向鄰近上層提供介面。資料鏈路層介面不變時,實作可自由替換(如乙太網、Wi-Fi、光纖),上層協議不受影響。這是豐富網路應用的基石。
介面對應功能可視為任務,讓程式設計師自主決定實作細節,稱之為程式任務式管理法。
「讓聽到炮火的人呼喚炮火!讓一線直接決策!」—— 任正非