下班路上坐地鐵的時候看了一本會計學的書,目前看了50多頁,程序中,發現會計學和程式設計在思想上有驚人的相似之處,今天舉兩個例子做說明,
CR設計和賬簿
CR設計介紹
CR設計就是只有創建和查詢,沒有更新和洗掉,咱們后臺人工操作,設計資料變更都需要有歷史記錄,歷史記錄和資料變更的最終結果區別在于歷史記錄有資料不變性,可以進行事件溯源,這個方法在《整潔架構》中有專門的介紹,現在非常流行的時序資料庫本質也是這一思想的具體實作,
賬簿介紹
這個思想的產生要追溯到石器時代,石器時代就有結繩記事,那些繩子就是原始人的賬簿,登記方法就是增加的時候在上面接個大疙瘩,減少的時候解開大疙瘩,隨后,繩子演變成了蘇美爾人的泥巴或者殷商人的龜甲,估計就是在上面畫道道,畫一些線條表示增加,另一些線條表示減少,估計那個時候中國人還不知道“+”和“-”這兩個符號,只好把增加和減少分開寫,中國人的習慣是上面寫增加、下面寫減少(天收地付),
CR設計應用
在現在的工程架構中,能運用軟體的就盡量不用硬體,因為它們缺少日志記錄,如果發生了例外情況難以排查,舉個例子,二層防火墻因為不能做負載均衡,都是主備類部署,一旦一臺出現故障必須立即停掉主,啟用備,發生位元位跳變等問題,沒有現場,也沒有日志,重啟這臺機器也不會再次故障,難以確認原因,不能確認原因怎么能確保下次不會再出現問題呢?強烈建議將出現故障不能給出原因的處理列到購買合同里,
下面是一個常用的一種主備模式叫A/S模式的原理圖,扯遠了,

校驗設計和復式記賬法
校驗設計介紹
咱們平時做通信,收到的資料包都有校驗和,金融支付領域都有對賬,畢竟完整性、準確性和一致性是資料質量最重要的三個標準,
復式記賬法介紹
這個思想也深得復式記賬法的精髓,復式記賬法是指對發生的每一項經濟業務,都要以相等的金額,在相互聯系的兩個或兩個以上的賬戶中進行記錄的記賬方法,
這種方法的優點是對于發生的每一項經濟業務,都要在兩個或兩個以上的賬戶中相互聯系地進行分類記錄,這樣,通過賬戶記錄不僅可以全面、清晰地反映經濟業務的來龍去脈,還能全面、系統地反映經濟活動的程序和結果,由于每一項經濟業務發生后,都是以相等的金額在有關的賬戶中登記,因而可以對記錄的結果進行試算平衡,以檢查賬戶記錄是否正確,
校驗設計應用
咱們網上取款的時候有雙因素校驗,不但登錄要輸入密碼,取款還要發一個手機驗證碼確認是本人,咱們的代碼要上線要經過靜態代碼檢查、代碼人工審查、集成測驗檢查等環節才能合并到主分支,咱們從一個系統定時同步資料時一般會實時獲取增量資料,同時配合定時任務拉取全量做比對,
總結
對于一門技術,有些人學的很快,很可能是他有意識的或者潛意識的進行抽象類比,找出共性和個性,掌握精髓,比如作業中、技術中、各個領域中都在用各種形式的“分類”:這本會計書上說會計就是分類的藝術,常用的思維導圖不就是一個分類工具么?資料結構化不就是把資料分類嗎?由此還產生了搜索引擎,
思考--你的作業!(出自《程式員修煉之道》)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/420433.html
標籤:其他
上一篇:微服務架構 | *2.5 Nacos 長輪詢定時機制的原始碼分析
下一篇:增加WMT17訓練集的最快方法
