Nejpoužívanější code quality review nástroje v Javě

publikováno: 28.3.2013

Jaké nástroje se používají pro hlídání kvality kódu? Mimochodem - jestli doposud něco takového nepoužíváte, pak určitě začněte, doporučuji zejména FindBugs, to je nástroj, který je nejméně "otravný" a najde nejzávažnější chyby ve vašem kódu.

Zde je seznam všech nejpoužívanějších nástrojů:

  • FindBugs: nejpoužívanější, analyzuje zdrojový kód a odhaluje chyby jako např. neuzavření připojení do souboru apod.
  • PMD: podobný jako FindBugs, nachází stejné i jiné chyby v kódu jako FindBugs. Najde například nepoužívané proměnné, prázdné catch bloky apod.
  • CheckStyle: vhodný nástroj při práci v týmu, aby všichni dodržovali stejné standardy tvorby kódu. Out-of-the-box moc užitečný není, vyžaduje před použitím "vytunění", ale pak se tato počáteční práce několikanásobně vyplatí.
  • Sonar: nástroj, který umožňuje efektivně kombinovat výše uvedené projekty (a víc).

Všechny nástroje naleznete v Eclipse Marketplace a také jako Maven pluginy.

A samozřejmě jsou open source.

Reference

Podavane informace byly aktualni, byly vysvetlene i souvislosti, hlavne na uvod byl dobre vysvetlen kontext probiraneho tematu, teda co je co a jaky to ma vyznam. Navic bylo cele skoleni podporeno

Petr

Školení bylo vážně skvělé. Nejsem začátečník, se Spring Bootem dělám už rok a tak jsem se bál, že mi školení nic nedá. Školení mi ale dalo to, že všechny střípky

Petr

S priebehom kurzu som bol nadmieru spokojný. Na kurze ma zaujali okrem klasickej teorie aj prakticke príklady ktoré boli podané s plnohodnotným vysvetlením. Myslím že v rámci školenia bol venovaný

František


Novinky

18.10.2018: JVM Ecosystem Report 2018
Statistik není nikdy málo, tentokrát ohledně obecných technologií, které se používají v Java světě.

26.9.2018: Java Mission Control (JMC) Build
Java 11 kompatibilní JMC build

15.9.2018: Nastavení GZIP komprese, HTTP/2, cachování statických stránek a HTTPS ve Spring Boot serveru
Jak nakonfigurovat Spring Boot server tak, aby byl production-ready?