Narzędzia Refaktoryzacji

From Training Material
Jump to navigation Jump to search

Template:PHP Links

title
Narzędzia refaktoryzacji
author
NobleProg Ltd


Kody źródłowe dla omawianych wzorców: http://svn.nobleprog.com/training/php/Refactoring/


PHP Code Sniffer ⌘

Czym jest PHP Code Sniffer? ⌘

Narzędzie sprawdzające składnię (nie pod kątem poprawności) kodu pod kątem konwencji kodowania (Codding Standards) jak na przykład: niepotrzebnych białych znaków, konwencji nazewnictwa zmiennych, klas, metod etc.

Instalacja ⌘

pear install PHP_CodeSniffer

Wyświetlanie listy zainstalowanych standardów ⌘

phpcs -i

Sprawdzanie składni wybranej klasy ⌘

phpcs --standard=Zend Customer.php


PHP Coding Standards Fixer ⌘

Czym jest PHP Coding Standards Fixer? ⌘

Narzędzie poprawiające składnie kodu pod kątem konwencji kodowania (Codding Standards). Twórcami narzędzia jest firma Sensio Labs, stojąca za frameworkiem Symfony.

Instalacja ⌘

sudo wget http://cs.sensiolabs.org/get/php-cs-fixer.phar -O <sciezka_instalacji>/php-cs-fixer

Poprawienie składni wybranej klasy ⌘

php php-cs-fixer.phar fix Customer.php --fixers=linefeed,short_tag,indentation


PHPLOC ⌘

Czym jest PHPLOC? ⌘

Narzędzie analizy struktury (jak liczba linii kodu, liczby metod, klas etc) autorstwa Sebastiana Bergmanna.

Instalacja ⌘

pear config-set auto_discover 1
pear install pear.phpunit.de/phploc

Analiza kodu ⌘

phploc Customer.php


PHP Copy/Paste Detector (PHPCPD) ⌘

Czym jest PHP Copy/Paste Detector (PHPCPD)? ⌘

Narzędzie pozwalające na odnalezienie zduplikowanych (minimalna liczba wykrywanych linii możliwa jest do skonfigurowania) linii kodu. Zduplikowane funkcjonalności można zastąpić jedną metodą. Autorem narzędzia jest Sebastian Bergmann.

Instalacja ⌘

pear config-set auto_discover 1
pear install pear.phpunit.de/phpcpd

Przeszukiwanie kodu pod kątem zduplikowanych linii kodu ⌘

phpcpd <sciezka_projektu>


Dead Code Detector ⌘

Czym jest Dead Code Detector? ⌘

Narzędzie pozwalające na odnalezienie zadeklarowanych metod i zmiennych, które nie są używane, autorstwa Sebastiana Bergmanna.

Instalacja ⌘

pear config-set auto_discover 1
pear install pear.phpunit.de/phpdcd

Przeszukiwanie kodu pod kątem nieużywanych zmiennych i metod ⌘

phpdcd <sciezka_projektu>


PHP Depend ⌘

Czym jest PHP Depend? ⌘

Narzędzie pozwalające na analizę metryk oprogramowania.

Instalacja ⌘

pear channel-discover pear.pdepend.org
pear install pdepend/PHP_Depend-beta

Analiza metryk kodu ⌘

phpdepend <sciezka_projektu>

w wersji 1.1.4:

pdepend <sciezka_projektu>


PHPMD - PHP Mess Detector ⌘

Czym jest PHPMD - PHP Mess Detector? ⌘

Narzędzie pozwalające na analizę wielu aspektów związanych z oprogramowaniem takimi jak na przykład: złożoność cyklomatyczną, nadmierną złożoność metod, nadmierną wielkość klas, użycie zmiennych globalnych, konwencje nazewnicze, użycia niezalecanych konstrukcji jak eval czy GOTO, nieużywanych metod etc.

Instalacja ⌘

pear channel-discover pear.phpmd.org 
pear channel-discover pear.pdepend.org
pear install --alldeps phpmd/PHP_PMD

Analiza kodu ⌘

phpmd  <sciezka_projektu> xml codesize