Подтвердить что ты не робот

PHP_CodeSniffer, PHPMD или PHP Depend

Я изучаю статический анализ кода существующего PHP-проекта, и мне трудно понять различия между PHP_CodeSniffer, PHPMD и PHP Depend. Являются ли они просто альтернативой одной и той же проблеме или они каким-то образом дополняют друг друга? Почему разработчик может выбрать один за другим?

4b9b3361

Ответ 1

Бесстыдная копия из http://phpqatools.org

pdepend

pdepend может генерировать большой набор программных показателей из заданной базы кода. Эти значения могут использоваться для измерения качества программного проекта, и они помогают идентифицировать части приложения, в которых должен применяться рефакторинг кода.

phpmd

phpmd сканирует исходный код PHP и ищет потенциальные проблемы, такие как возможные ошибки, мертвый код, субоптимальный код и сверхсложные выражения.

phpcs

phpcs символизирует файлы PHP, JavaScript и CSS и обнаруживает нарушения определенного набора стандартов кодирования. Это важный инструмент разработки, который гарантирует, что ваш код останется чистым и последовательным. Это также может помочь предотвратить некоторые распространенные семантические ошибки, сделанные разработчиками.

Нет, они не просто альтернативы. PDepend и PMD сосредоточены на показателях программного обеспечения, в то время как PHPCS определяет правила, основанные на шаблонах в потоке токенов. PDepend не заботится ни о каком нарушении правил кодирования. Вы должны использовать все три из них. Если возможно, на сервере непрерывной интеграции, например Jenkins.