幾種常見的代碼複用級別

幾種常見的代碼複用級別

http://tommwq.tech/blog/2021/03/02/331

級別1:複製粘帖

這個級別的代碼複用是通過複製粘帖完成的。需要複用代碼時,找到相似的代碼複製過來,稍加修改即可完成。這種複用方法看起來簡單、快速,但難以應對需求變更。假設一份代碼複製到了10處,需求變化時,就要手動修改10個地方。工作量大,還容易產生缺陷。這種代碼複用方式靈活性差、健壯性差。當然,如果只有2-3出使用了相同的代碼,可以採用這種方式複用。但如果複製次數超過3次,最好採用更高級別的複用方式。

級別2:函數複用

在這個級別,需要複用的代碼段被封裝爲函數或靜態方法。這個級別適用於簡單邏輯的複用。因爲函數難以傳遞(入參)和維護複雜狀態(本地變量)。

級別3:對象複用

比函數更高一層的,是對象級別的複用。對象封裝了具體操作和相關狀態。在維護狀態一致性上,對象比函數更有優勢。對象讓客戶代碼(client code)能夠從業務的角度,而非底層實現的角度實現代碼複用。客戶代碼只需要知道對象可以實現特定業務操作,具體的操作是如何實現的,則由對象來負責。

級別4:模塊/服務複用

對於複雜業務流程,涉及的操作和狀態較多,單一對象難以支持。這時候就需要不同類型的對象相互協作。這些對象構成了模塊。爲了保護模塊內部對象,模塊通常會暴露若干個服務(領域服務、RPC服務等)作爲界面(facade),客戶代碼通過調用服務實現業務目標。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章