crab

crab

The 'crabs in a barrel' mentality only exists if we view ourselves as a crab. The truth is on the map.

任何編程問題都可以通過加一層解決

大衛・惠勒:計算機科學中的任何問題都可以通過增加一層間接性來解決。

越來越發現這個非常有道理。為什麼?

我自己的理解是:

  1. 一開始編寫的代碼是為了解決特定問題,因此只針對特定情況。
  2. 漸漸地,特定情況的種類越來越多,如果修改原有代碼就會變得越來越複雜,無法修改。
  3. 為了將問題範圍縮小,就將最底層(一開始解決特定問題的代碼)進行一些抽象,暴露出接口定義讓上層適配,上層適配就是將不同種類的特定問題適配到下層接口,這樣就相當於增加了一層。
  4. 步驟 3 的好處是什麼?底層代碼改動少,上層適配,只有適配邏輯,這樣就起到了代碼隔離,減少相互影響,如果適配這一層,由出現步驟 2 提到的問題,那麼就繼續步驟 3,這樣就又多了一層,所以一層一層就解決了一個一個問題。
  5. 現實和這個邏輯還是很像的,一開始代碼寫的比較死,越改越改不動,那就將參數,配置提出,可以更靈活的配置。

一點小感悟,不過確實有道理。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。