《代码大全》阅读笔记-18-表驱动法
生活随笔
收集整理的這篇文章主要介紹了
《代码大全》阅读笔记-18-表驱动法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
表驅動法是一種編程模式(scheme)——從表里面查找信息而不使用邏輯語句(if、case)。事實上,凡是能通過邏輯語句來選擇的事物,都可以通過查表來選擇。在適當的情況下,采用表驅動法會比復雜的邏輯代碼更簡單、更容易修改,而且效率更高。
表驅動法必須要解決的兩個問題:
1、如何從表中查詢條目:
- 直接訪問
- 索引訪問
- 階梯訪問
2、表里應該存什么:
- data
- action/action ref
靈活的消息格式:metadata+core logic code based on config
核對表(表驅動法)
- 你考慮過把表驅動法作為復雜邏輯的替換方案嗎?
- 你考慮過把表驅動法作為復雜繼承結構的替換方案嗎?
- 你考慮過把表數據存儲在外部并在運行期間讀入,以便在不修改代碼的情況下就可以改變這些數據嗎?
- 如果無法用一種簡單的數組索引去訪問表,那么你把計算訪問鍵值的功能提取成單獨的子程序,而不是在代碼中重復地計算鍵值嗎?
要點
- 表提供了一種復雜的邏輯和繼承結構的替換方案。如果你發現自己對某個應用程序的邏輯或者繼承樹關系感到困惑,那么問問自己它是否可以通過一個查詢表來加以優化
- 使用表的兩大關鍵決策:1、如何訪問表;2、表中存放什么
--》狀態機
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的《代码大全》阅读笔记-18-表驱动法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 百家姓日文读音转载
- 下一篇: 正则表达式-趣现象一则