konto usunięte

Temat: Analiza statyczna kodu.

Witam
czy moglibyście polecić jakieś narzędzia do analizy statycznej kodu - najlepiej darmowe ?
Jan W.

Jan W. Programista Java

Temat: Analiza statyczna kodu.

Czołem,

korzystałem z poniższych:

http://pmd.sourceforge.net

i

http://findbugs.sourceforge.net

Obydwa mają swoje dziwadła wśród standardowych reguł, ale te można dowolnie włączać i wyłączać.Jan W. edytował(a) ten post dnia 13.07.09 o godzinie 20:02
Piotr Stawiński

Piotr Stawiński
projektant/programis
ta, Narodowy Bank
Polski

Temat: Analiza statyczna kodu.

Jan W.:
Czołem,

korzystałem z poniższych:

http://pmd.sourceforge.net

i

http://findbugs.sourceforge.net

Z mojego doświadczenie trochę lepszy jest FindBugs. Potrafił np. dla kodu
if (input instanceof HtmlSelectBooleanCheckbox)
((HtmlCalendar)input).setDisabled(true);

rzucić błąd: "D:/MyEclipse_workspace/portal/portal-war/src/main/java/pl/nbp/portal/gui/applicationform/CertificateRequestBackingBean.java:149 Impossible cast from javax.faces.component.html.HtmlSelectBooleanCheckbox to org.richfaces.component.html.HtmlCalendar"

PMD nie zgłaszał problemu. Być może jest to kwestia konfiguracji...

Zalety obu "analizatorów" to integracja z Eclipsem.Piotr Stawiński edytował(a) ten post dnia 13.07.09 o godzinie 20:58
Tomasz D

Tomasz D Programista
Java/JEE, freelancer

Temat: Analiza statyczna kodu.

Ja polecam narzędzie Sonar (http://sonar.codehaus.org/). Używa już istniejących narzędzi i bibliotek, między innymi Checkstyle, PMD, Maven i Cobertura. Możliwa jest też integracja z Hudsonem, ale to już jak na moje potrzeby za dużo, więc się nie wypowiadam jak to działa :) Info o nim pojawiło się na tegorocznej Javarsovii, a ja, zachęcony opiniami, zainstalowałem go u siebie.

Po zainstalowaniu dodajemy kolejny goal w aplikacjach budowanych za pomocą Mavena i reszta robi się sama. Mamy wgląd w statystyki kodu, jak zmieniała się jego jakość i parametry na przestrzeni czasu i kolejnych commitów, a wszystko w postaci przejrzystych wykresów. Reguły sprawdzania (podobnie jak w PMD i Checkstyle) możemy definiować, edytować, wyłączać, itd.

To moje pierwsze narzędzie tego typu i naprawdę używa się go łatwo i przyjemnie :) Sporo dowiedziałem się o jakości kodu w moich kilku projektach.

Sonar dla Javy jest darmowy, jest też wersja dla PL/SQL i ta jest już podobno płatna.

konto usunięte

Temat: Analiza statyczna kodu.

Bardzo wszystkim dziękuję za pomoc.



Wyślij zaproszenie do