Skip to main content

Design Pattern

https://www.facebook.com/rick.kyhwang/posts/10210748760634525

#隨筆

#DesignPattern 存在的目的,不是為了掉書袋、耍專業的傲慢,而是讓工程師跟工程師之間、開發者跟開發者之間,能夠 #高效溝通。

叫兩個不同語言背景的工程師 (Node.js, GoLang) 說明 Observer Pattern,結果應該是一樣的。因為 Design Pattern 講的是抽象觀念,不是實作技術。透過直接使用 Pattern 的溝通會更效率化溝通。

Design Pattern 是溝通的 #術語,也是專業的體現。如果不知道 Observer Pattern 是啥鬼,那應該要知道回去好好用功,或者好好請教有經驗的人。

Design Pattern 是工程師之間的抽象介面術語,是為了高效溝通。而組織跟組織之間的溝通也是一樣,溝通的東西也是抽象介面,而不是自己的技術生態圈。如果管理階層都無法在抽象介面之上,建立良好的抽象協議,那麼所有的溝通實際上是沒意義的。

另外 Design Pattern 不僅止於工程師之間的溝通術語,他的本質與 #系統架構 是一模一樣的概念,換言之,在 Design Pattern 中各個討論 Pattern 的方式與結構,同樣可以套用在溝通 #系統架構 上,同樣的這個溝通也是抽象介面,不談實際的技術實踐。

所以:

  1. 工程師跟工程師之間的高效溝通
  2. 系統架構的高效分析
  3. 組織跨團隊的高校溝通
  4. 組織與系統的對應與高效溝通 (#康威定律)

這些本質上都類似,這些都考驗 #抽象化(唬爛)能力。另外可以再加上 OOP 來論述。

今天聽完外部產品經理分享的想法整理,其實這個分享有很多點在我的這篇文章 [1] 裡都有。

[1] https://rickhw.github.io/2017/11/26/Thinking-in-Essence/
https://openhome.cc/Gossip/StudyGossip/abstractThinking.html