PHP 程式碼評審的 10 個提示

TP_funny發表於2014-09-23
本文只代表排名前10的地區,當你接到一個關於PHP專案程式碼稽核的任務,第二天,一個PHP高階開發者問我從哪裡考慮稽核PHP web 應用相關的任務.大家集體討論,並提出列表.有趣的是,除了少數,大部分也適用於其他程式語言編寫的應用.如果我在本文中有所疏漏, 歡迎讀者朋友們指出書中存在的問題,並提出指導性意見,不勝感謝。

在這篇文章中提到的以下的關鍵點:
  • 業務功能
  • 框架相關的編碼指南
  • 物件導向原則
  • PHP-規範標準
  • 程式設計方式的最佳實踐
  • 設計模式
  • 程式碼覆蓋率
  • 安全性
  • 異常處理
  • 整合模式
在進入細節之前,我不得不提到我認為以下8引數(ISO 25000 SQUARE標準)想出不同的程式碼複審標準覆蓋程式碼質量的方方面面。
  • 功能適用性
  • 可維護性
  • 可用性
  • 安全性
  • 有效性
  • 可靠性
  • 可移植性
  • 相容性

堅持業務功能

首先,重要的是嘗試,看看是否你可以驗證和驗證如果程式碼交付所需的業務功能。這可能需要你跟業務分析師交流和讓自己清晰這些業務功能。對於遺留專案,對於業務分析師,這是很難抓住。然而,對於正在進行中的專案,它更加簡單了。檢查業務功能實際上也適用於其他程式語言除了PHP。

框架相關的編碼指南
如下所示的幾個框架可以用於建立基於PHP的web應用程式。你可能會想如果這些程式碼可以按照特定的框架編寫達到編碼規範並且最好的情況下能作為框架制定的部分。
物件導向的原則
這一條同樣也適用於其他程式語言。你可能會想檢查PHP程式碼是否違反了一下幾條物件導向原則,並且能夠發現指出程式碼以及適當的對程式碼進行一些重構。
  • 單一功能、開閉原則、里氏替換、介面隔離以及依賴反轉
  • 不要寫重複程式碼
  • 適可而止原則
  • 迪米特法則即“最少知識原則”

PHP-specific標準

你可能想要方便的PHP程式語言標準和最佳實踐和評審程式碼列表。

程式設計方面的最佳實踐

然後,有些領域使用的資料結構,麥凱布程式碼複雜性,您願意考慮,同時審查程式碼對程式設計方面的最佳實踐。這也適用於其他程式語言。

使用設計模式
這兒有一些PHP設計模式,可以通過一個標準的方式來改善你的程式碼結構。從您可能想要檢視程式碼的角度來看,建議可以應用適當的設計模式,。我發現這種像樣的頁面足夠提及幾個設計模式應用於PHP。
程式碼覆蓋率
這是標準的程式碼評審練習和一個可能想檢查底層程式碼的程式碼覆蓋率和強調重要的編寫單元測試。這也適用於其他程式語言。

安全性
截止到今天,安全性是一個重要的領域,需要從業務連續性和聲譽的角度來看,考慮在做程式碼審查的安全重要性。你可能想強調使用PHP OWASP library應用在那些基於PHP的應用級安全的應用程式們。你可能也想用PHP security cheat sheet來處理。
異常處理
這是非常重要的方面,考慮到了應用程式的可靠性。這可能是個好主意,對於檢視異常/錯誤處理機制/實踐中使用的程式碼並且給予適當地建議。這也同樣的適用於其他的程式語言。

整合模式/協議  
你可能希望確定用於應用程式和審查依附於標準的設計/程式碼規範的整合標準/協議。你可能希望檢查應用程式特地暴露出來作為將來共同整合應用程式的其他應用程式請求的API。這同樣適用於其他的程式語言。

英文原文:Top 10 PHP Code Review Tips
來自:PHP100
評論(3)

相關文章