程式可讀性
外观
编程领域的可读性指的是:人类读者对于源代码的功能意图、流程控制和操作运行是否容易把握。
不同的程式語言,其可读性也會不同。例如對一般的程式設計者而言,C語言、Java語言等高階語言會比組合語言要容易閱讀[1],不過一般在調整可读性時,多半是在不改變程式語言的前提下進行調整。
可读性之所以重要,乃是由于:程序员会把大部分时间,花费在阅读并试图理解和修改现存源代码上面,而不是编写新的源代码。没法读的代码往往导致缺陷、低效与代码重复。有研究[2]发现,一点点简单的可读性改造,也能让代码变得简短,并且大大缩短看懂所需的时间(就像一段沒有善加利用標點符號,部分帶有冗贅詞語的文句。稍微修改該文句,改以適當的方式使用標點符號,將冗贅詞語修正。就能提高讀者讀取文句訊息的流暢度)。
遵循固定的代码风格往往会改善可读性。然而,可读性并不只是跟编程的风格有关。还有诸多因素会对可读性有所改善,但這些因素不太会影响到计算机编译并执行源代码的效能[3]。这些因素包括:
程式碼的呈現層面的內容(例如縮排、行分隔、顏色高亮等等)多半是由源代码编辑器在處理,不過程式碼的內容就反映了程式設計者的才能以及技術。
許多視覺化程式設計語言的產生就是為了處理程式可讀性的問題,因此導入了有關程式結構及顯示上許多非傳統的作法。集成开发环境(IDE)的目的也是希望整合一些對程式閱讀、理解、除錯有幫助的工具。像代码重构之類的技術,在不更改程式執行結果的前提下,調整程式的結構,也可以提昇程式可讀性。
相關條目
[编辑]- 国际C语言混乱代码大赛
- 程式複雜度
- 循環複雜度:源代碼中線性獨立路徑的個數,可以表示程式的複雜度。
- 优化编译器:針對程式的大小、執行時間或記憶體佔用進行最佳化的編譯器。
參考資料
[编辑]- ^ 強化程式可讀性,以提升開發的效率
- ^ James L. Elshoff , Michael Marcotty, Improving computer program readability to aid modification, Communications of the ACM, v.25 n.8, p.512-521, Aug 1982.
- ^ Multiple (wiki). Readability. Docforge. [2010-01-30]. (原始内容存档于2020-04-29).