2 回答

繁花如伊
TA貢獻2012條經驗 獲得超12個贊
把底層的接口包裝一層,然后向上層提供接口。這樣底層改變的話,上層也就是你寫的代碼不用動,只改中間鍵即可。由于只有中間鍵一個地方調用底層,改起來會比較方便。

楊魅力
TA貢獻1811條經驗 獲得超6個贊
中間件應該一種架構方法,不局限于特定的語言。
例如提供不同應用之間消息通訊的消息中間件。淘寶下面很多產品之間都需要信息共享,通過一個中間人來專門傳遞消息。這樣做很容易擴展,對上層應用提供統一消息操作接口就行了。單個程序內部也可以有中間件,一個程序內部實現對中間件接口對支持。例如web程序,在統一的入口處,加上
middleware->call()
,只要實現了call接口的中間件,就可以在程序實際執行前做很多自定義的動作,例如用戶檢查、日志記錄。
class user_check_middleware() {
public function call() {
//do user check
$app->next_middleware->call();
}
}
class log_middleware() {
public function call(){
//do log
$app->next_middleware->call();
}
}
這樣通過新增中間件,不去修改核心代碼,就可以擴展系統。
這種設計方法,解耦,伸縮性很好,應用很廣泛。
添加回答
舉報
0/150
提交
取消