2021-58
面試時 一位CTO問我有沒有聽過Data Oriented Design
我說我做了五年的Backend 只會Data Oriented Design.
CTO一臉懷疑
我解釋
我為何不用 C# or Java
因為基本上
畢竟MongoDB output is Data (Bson)
API output is Data (Json)
Why I need Class in between.
哈哈哈哈
All you need to do is pipe you data from here to there.
Nodejs 超級適合這件事的
所以我用了五年
我不反對OO 尤其是在UI 或是Closed Domain 的環境
所謂的Closed Domain就是說
大家公認的 沒有毛的 例如Button就是Button
問題在Web Service for Business上
沒有幾件事是公認的
因此毛很多
這樣一來
Data Change -> Function Change
Function Change -> Data Change
OO 不太靈活
當然啦
如果OO 只有Data + Interface (Small Interface)
我覺得倒是還OK
因此Go or Rust 還不錯
(本書的作者用的是Clojure , Lisp的其中一個後代, Run on JVM)
不過
當然啦 有些人會認為這是工作保障
畢竟毛很多 事很多 哈哈哈
不過我就是懶@@
再說一次
軟體工程的限制只在於自己的想法 不是工具 (via SICP)
Comments