2017年05月29日

雲の足跡

phpmdを使ってみる



 
 
phpmdとは
phpmdはPHP Mess Ditector、コードでバグを生みそうな箇所、設計、実装上の問題をルールに従って検出してくれるツールです
https://phpmd.org/about.html

早速インストール
pearコマンドを使います、&yum
# yum install php-pear
# pear channel-discover pear.pdepend.org
# pear install pdepend/PHP_Depend
# pear channel-discover pear.phpmd.org
# pear install --alldeps phpmd/PHP_PMD
# pear install PHP_CodeSniffer

composer利用
URL:(https://getcomposer.org)

JSON_FILE:composer.json
{
"require-dev": {
"phpmd/phpmd" : "*"
}
}
# php composer.phar install
# sudo ln -s /vagrant/vendor/phpmd/phpmd/src/bin/phpmd /usr/bin/phpmd
# sudo chmod ugo+x /usr/bin/phpmd

実際に使ってみる
phpmd hoge.class.php text cleancode,codesize,controversial,design,naming,unusedcode

cleancode:コードが綺麗であるかどうか
codesize:コードの複雑さを検出
controversial:命名規則、キャメルケースなどを検出
design:設計上の問題を検出
naming:メソッド名、プロパティ名の名称をチェックする
unusedcode:使われていないプロパティや変数などの検出

コードのxx行目が複雑すぎるぞ
コードのyy行目の命名規則がおかしいぞ
コードのzz行目のプロパティはどこでも使われてないぞ
であったり、メソッド多すぎるぞ、行数長すぎだぞ

などなど実装上の問題をゴロゴロとリストアップしてくれます
テストのサーバや自身のプライベートサーバ上に載せて見てたりします
classが大規模になってメンテナンス性が落ちてるんじゃないかとか
設計上これで大丈夫か、簡単に見てみたいなって時には使えるんじゃないかと思います