php - 幾個功能模組公用了部分程式碼,想修改其中一個功能,如何避免破壞其他功能
怪我咯
怪我咯 2017-05-16 13:08:42
0
13
1183

幾個功能模組有部分程式碼是公用的,想修改其中一個功能,需要修改公用程式碼,在不確定哪些功能引用了這段程式碼的情況下,如何避免破壞其他功能

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(13)
伊谢尔伦

抽象化
然後再寫多個方法來實作抽象的方法,不同的功能點實作不同的業務邏輯。

漂亮男人

最簡單的方法。複製出來單獨引用。

淡淡烟草味

比如說你要修改公共模組的A方法,這時候還有其他模組也是用的A,你可以不修改A而是另外寫一個A1方法。

滿天的星座

可以將子類別的程式碼把公共部分覆蓋掉,你就可以任意修改其中一個的功能了

世界只因有你

建立一個分類 在分類中重寫這個方法 在這個檔案中導入這個分類。

左手右手慢动作

寫個子類別繼承這個公共方法的類,需要修改的地方封裝到子類別裡,目標模組用這個子類別。

曾经蜡笔没有小新

創建一個新的方法。包裝別人的方法。

function pre() {}

function now() {
    var result = pre()
    // todo sth
    // todo sth
    return newResult
}
伊谢尔伦

如果你的修改改變了原有代碼的行為的話,最好還是創建一個新的
如果新的代碼和原有代碼有很多重複的話,可以考慮把可復用的地方提取出來

某草草

兩種方式:

  1. 為方法加入 flag 類型的參數,在方法中依據不同的 flag 做不同的處理

  2. 重寫多一個方法

黄舟

用分類的方式來修改那個方法吧

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!