pDepend a php frameworky
pDepend
Php Depend (pDepend) patří do skupiny nástrojů QA (Quality assurance) pro kód a je odvozen od JDepend, kde je také popis části metrik, které pDepend používá. V nedávné době byla spuštěny nové stránky projektu a verzí 0.9.4 se mi zdá již velmi použitelný. Abych vyzkoušel jak to funguje vzal jsem si z SVN repozitářů několik frameworků a pustil nad nimi pDepend.
CodeIgniter


Nette


Zend Framework


Symfony 1.2
http://www.symfony-project.org/


Solar


CakePHP


Prado


Závěr
Nejsem expert na QA abych mohl fundovaně hovořit na základě těchto dat o kvalitě frameworků, jen mě zaujalo několik věcí. Z grafů je vidět nakolik je mezi frameworky používaná abtrakce a nakolik jsou si v konstrukci podobné Symfony a Zend a jak se liší Nette a CodeIgniter.
Z pyramid mě zaujali čísla kolem LOC (počet řádků kódu) v porodnání s počtem metod (NOM) a tříd (NOC). ANDC (průměrná hodnota odvozených tříd) nám řekne jak to framework s dědičností. AHH (průměrná výška hiarchie) je metrika která udá průměr hloubku v dědičnosti.
Podrobný popis pyramid vám odpoví na otázky co znamená, která značka a hlavně je tam tabulka referenčních hodnot jednotlivých metrik.
Bohužel jakákoliv metrika vám nikdy neřekne nic o tom, jak je který framework dobrý nebo zda vám bude vyhovovat.

Je někde popis těch grafů? Tedy co přesně je na X ose, co na Y ose, co znamená ta čára, co představují ta kolečka a co jejich velikost. Mám jisté tušení, ale chtěl bych přesný popis a na stránkách pDepend ani jDepend jsem ho nenašel.
[1] docetl jsem se to v tom prvnim odkazu na JDepend. Ideal je, kdyz tecky lezi na te zelene diagonale.
Diky za zajimavy clanek, vubec jsem netusil, ze neco takoveho existuje.
Díky za zajímavýčlánek! Dobrá utilitka…
@David Grudl
Jsem rád, že se to někomu aspoň trochu líbí. Zkusím udělat retest frameworků za 6 měsíců, uvidíme jak frameworky pokročí ve vývoji.