將 Object 序列化為 Json 時,攤平 Json string 欄位

https://blog.yowko.com/not-serialize-json-string/


在不同系統間透過 Json 來交換資料是很常見的設計,甚至在某些系統上還可以見到將 Json string 儲存在屬性中,當然有人會質疑這樣就失去強型別的好處,不過會這樣使用就是希望達到 schema-free 的彈性:在一開始未能完整設計但又是非核心常用的內容可以被保留下來。

將某些述敘用內容轉為 Json string 放在屬性值中保存,在系統間的溝通完全沒有問題,不再會因為上下游系統想要改屬性名稱或是增減屬性定義就需要每個系統跟著調整,不過在 log 時就不是那麼好閱讀,Json 有一部份的好處就是人眼可以直接看得懂,但物件屬性值如果是 Json string 在 log 輸出時會被重複 serialize,而加上跳脫符號(\)。

How to make sure that string is valid JSON using JSON.NET


程式語言編年史

程式語言編年史原文 下面這張圖片描繪了整個程式語言的歷史。包括各種程式語言的發明人、程式語言的特點和適用領域、被什麼網站或公司使用等 (檢視 完整高清圖 )。 之所以會有那麼多不同的程式語言是因為設計程式語言的初衷不同、對語言學習曲線的追求不同、不同程式之間的執行成本差異...