重點摘要#

  • 即使是最優美、最優雅的可重用架構,也只有在人們知道它存在、知道如何使用、並相信它比自己做更好時才會被重用
  • 重用是人和教育的問題,不僅是架構問題
  • 主動推送可重用元素的資訊,不要指望人們自己去找
  • 如果團隊不知道可重用資產在哪裡或如何使用,他們就會自己建造,而你得為此買單

詳細內容#

你可能認為一個設計良好的框架、或一個精心考慮且巧妙實作的架構,會自然而然地在組織中被重用。事實是,即使是最美麗、最優雅的可重用架構、框架或系統,也只有在人們滿足以下三個條件時才會被重用。

條件一:知道它的存在#

組織內的開發者或設計師需要知道某個設計、框架、函式庫或程式碼片段存在,以及在哪裡可以找到關於它的所有關鍵資訊(如文件、版本、相容性)。

人們不會去尋找他們不相信存在的東西。如果可重用元素的資訊是被「推送」出去的,你更有可能成功。

推送資訊的方法包括:

  • 帶有 RSS 的 wiki 頁面
  • 宣布版本更新的電子郵件
  • 在小團隊中,透過個人對話直接傳達

條件二:知道如何使用#

理解如何重用一個元素取決於技能和培訓。當然有些天賦異稟的開發者和架構師能夠快速理解,但這些人是少數。團隊的其他成員需要:

  • 易於獲取的最新文件
  • 甚至更好的是培訓

一點培訓就能大大確保每個人在重用方面達成共識。

條件三:相信它比自己做更好#

人,尤其是開發者,傾向於自己解決問題而不是尋求幫助。「比自己做更好」對不同的人意味著不同的事:

  • 年輕的開發者總是想自己寫東西,因為這滿足他們的自我
  • 資深的人員更願意接受有人已經對問題領域進行了思考

如果你的團隊不知道在哪裡找到可重用的資產或如何使用它們,他們會回歸到人類的自然本能:自己建造。而你得為此付出代價。

— By Jeremy Meyer