提高程式碼可維護性(2)---日誌列印
程式碼維護手段有很多種,有單步,訊息跟蹤,棧列印,下面重點講講日誌列印。
網上看到Python的八榮八恥如下:
以動手實踐為榮 , 以只看不練為恥; 以空格縮排為榮 , 以製表縮排為恥; 以單元測試為榮 , 以人工測試為恥; 以模組複用為榮 , 以複製貼上為恥; 以多型應用為榮 , 以分支判斷為恥; 以Pythonic為榮 , 以冗餘拖沓為恥; 以總結分享為榮 , 以跪求其解為恥;
第二條就是以列印日誌為榮,以單步跟蹤為恥。也不知道是否所有人都能接受這一點。
但是往往大部分時候,對程式的維護人員來說,日誌列印是問題定位的最後一根救命稻草。
單步跟蹤不是什麼條件下都可以的,尤其是一些難以重現的BUG或者測試部的環境。此時一
個良好的列印顯得尤為珍貴。
日誌應該是維護程式碼中最經濟,快捷的方式。實現特別容易,但是一個良好的日誌列印
卻不是一個簡單的活。
列印作為維護程式碼,最主要的作用就是快捷的收集恰當的資訊以方便定位。資訊量過大,
讓定位的人困擾,資訊量過小, 沒有有效的資訊。兩者都不行。所以列印不是隨便加就
能加好的。要加好列印資訊,個人體會要遵守一些基本原則。
1.像列印之類的維護程式碼,應該納入設計階段。
有一句話叫 。這句話從一個側面就提出來,我們要寫容易維護的程式碼
,那麼在設計階段就應該充分考慮程式碼維護問題。比如應該設計格式統一的日誌列印
方法,還比如在業務邏輯的關鍵點,一定要列印等。
只有在設計階段統一考慮維護程式碼問題,才能避免各個開發人員各自為政。出現風格不統一的列印,
整個列印才更有整體邏輯性和整體性。
2.列印一定要分級別
按道理說這個應該是設計者就定下來的,多少級別,級別劃分(如劃分為fata,error,debug,
infor等級別)。但是希望開發著一定要理解這一點。列印如果不分級別,一團糟,
那麼程式碼維護人員很容易被淹沒在過多的日誌列印中。不好的列印還不如沒有列印。
3.列印程式碼同樣需要維護
程式碼需要不斷的更新維護,同樣日誌列印程式碼也是一樣的。要不斷根據業務的發展,更新維護程式碼。
這樣才能保證列印日誌是有效的。
總之,通過精心設計,良好維護的日誌列印一定會為程式碼的維護性增色不少!
相關文章
- 如何提高程式碼的可維護性
- 關於提高程式碼可維護性的一點思考
- 程式碼結構-可維護性程式碼
- Java 列舉(Enums)解析:提高程式碼可讀性與易維護性Java
- 從 IM 通訊 Web SDK 來看如何提高程式碼可維護性與可擴充套件性Web套件
- 書寫可維護程式碼的重要性
- [Java/日誌] 日誌框架列印應用程式日誌程式碼的執行情況Java框架
- 註釋之重——程式設計師與程式碼可維護性程式設計師
- STL程式設計實踐四:簡化輸入和提高可維護性 (轉)程式設計
- 引數校驗與國際化:提高程式碼穩定性和可維護性的重要方法
- rman維護歸檔日誌
- 精讀《可維護性思考》
- 什麼是可維護性的程式碼,這十六點得知道
- MySQL日誌維護策略彙總MySql
- 物化檢視日誌的維護
- 【Mysql 學習】日誌的維護MySql
- HA維護要收集的日誌
- ETL的可擴充套件性和可維護性套件
- 【Spring】日誌列印sql,日誌配置列印sqlSpringSQL
- 如何提高程式碼的可測試性
- 物件導向的可維護性物件
- 第6章:可維護性軟體構建方法 6.3可維護性構建技術
- 使用JSDoc提高程式碼的可讀性JS
- 提高Java程式碼可重用性的三個措施Java
- 面向可複用性和可維護性的設計模式設計模式
- 遠離麵條程式碼:編寫可維護的 JS 程式碼JS
- 程式碼可維護性檢查 終於到了資料統計階段了
- Unity——日誌列印工具Unity
- 日誌--列印規範
- Log 工具列印日誌
- 如何提高程式碼的可讀性? - 讀《編寫可讀程式碼的藝術》
- 提高Java程式碼可重用性的三個措施 (轉)Java
- 第6章:可維護性軟體構建方法 6.1可維護性的度量和構造原則
- 日誌-log4j2基於AsyncAppender的非同步日誌列印APP非同步
- MySQL日誌維護的7大策略詳解MySql
- 經驗分享:MySQL日誌維護策略總結MySql
- 提高程式碼可讀性的 10 個註釋技巧
- 如何編寫高質量和可維護的程式碼