This shows you the differences between two versions of the page.
poo-ca-cd:laboratoare:tutorial-checkstyle [2020/07/28 23:08] 127.0.0.1 external edit |
poo-ca-cd:laboratoare:tutorial-checkstyle [2020/10/13 15:39] (current) laurentiu.stamate [Instalare checkstyle] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | =Tutorial checkstyle= | + | =====Tutorial checkstyle===== |
- | * Responsabil: [[:poo-ca-cd:michelcatalin@gmail.com|Mihai Burdușelu]] | + | * Responsabil: [[michelcatalin@gmail.com|Mihai Burdușelu]] |
- | * Data publicării: 01.10.2017 | + | * Data publicării: 01.10.2017 |
- | * Data ultimei modificări: 02.10.2017 | + | * Data ultimei modificări: 02.10.2017 |
- | ==Obiective== | + | ====Obiective==== |
Scopul acestui tutorial este de a vă prezenta checkstyle, un tool de analiză statică a codului java. | Scopul acestui tutorial este de a vă prezenta checkstyle, un tool de analiză statică a codului java. | ||
- | ==Introducere== | + | ====Introducere==== |
- | Acest tool configurabil are rolul de a-i semnala programatorului faptul ca nu a respectat anumite standarde de scriere a codului (ex: [[:poo-ca-cd:http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html|Sun Code Conventions]], [[:poo-ca-cd:http://checkstyle.sourceforge.net/reports/google-java-style.html|Google Java Style]]). | + | Acest tool configurabil are rolul de a-i semnala programatorului faptul ca nu a respectat anumite standarde de scriere a codului (ex: [[http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html|Sun Code Conventions]], [[http://checkstyle.sourceforge.net/reports/google-java-style.html|Google Java Style]]). |
Un cod care respectă standardele și un set de bune practici este mai ușor de înțeles, de depanat și de extins. | Un cod care respectă standardele și un set de bune practici este mai ușor de înțeles, de depanat și de extins. | ||
Aceste standarde sunt descrise într-un fișier **poo_checks.xml** (vezi Resurse), care va fi importat de către checkstyle. | Aceste standarde sunt descrise într-un fișier **poo_checks.xml** (vezi Resurse), care va fi importat de către checkstyle. | ||
- | ==Instalare checkstyle== | + | ====Instalare checkstyle==== |
- | - [[:poo-ca-cd:laboratoare:tutorial-checkstyle:intellij]] | + | * [[:poo-ca-cd:laboratoare:tutorial-checkstyle:intellij | IntelliJ]] |
- | - [[:poo-ca-cd:laboratoare:tutorial-checkstyle:eclipse]] | + | ====Exemple de warninguri semnalate de checkstyle==== |
- | + | Checkstyle oferă o serie de verificări, toate listate în [[http://checkstyle.sourceforge.net/checks.html|documentație]]. | |
- | ==Exemple de warninguri semnalate de checkstyle== | + | |
- | Checkstyle oferă o serie de verificări, toate listate în [[:poo-ca-cd:http://checkstyle.sourceforge.net/checks.html|documentație]]. | + | |
Să luăm ca exemplu de utilizare checkstyle următoarea clasă. | Să luăm ca exemplu de utilizare checkstyle următoarea clasă. | ||
Line 45: | Line 43: | ||
</code> | </code> | ||
- | ==Rezolvare warninguri== | + | ====Rezolvare warninguri==== |
- | 1. Aceasta eroare ne obliga să facem private acest membru și să oferim getteri si setteri pentru el. | + | 1) Aceasta eroare ne obliga să facem private acest membru și să oferim getteri si setteri pentru el. |
- | 2. 3. Este recomandat să facem parametrul final, întrucât trebuie evitată modificarea acestuia în interiorul unei metode. | + | 2) + 3) Este recomandat să facem parametrul final, întrucât trebuie evitată modificarea acestuia în interiorul unei metode. |
- | 4. Parametrul trebuie să aibă alt nume față de câmpul din acea clasă. | + | 4) Parametrul trebuie să aibă alt nume față de câmpul din acea clasă. |
- | 5. Acest warning se referă la faptul că metodele publice sau protected ale unei clase ce va fi moștenită trebuie sa fie documentate. | + | 5) Acest warning se referă la faptul că metodele publice sau protected ale unei clase ce va fi moștenită trebuie sa fie documentate. |
Următorul cod reprezintă una din modalitățile de corecție ale warningurilor anterioare. | Următorul cod reprezintă una din modalitățile de corecție ale warningurilor anterioare. | ||
Line 77: | Line 75: | ||
</code> | </code> | ||
- | ==Resurse== | + | ====Resurse==== |
- | * [[:poo-ca-cd:http://checkstyle.sourceforge.net/checks.html|Documentație warninguri checkstyle]] | + | * [[http://checkstyle.sourceforge.net/checks.html|Documentație warninguri checkstyle]] |
* {{:poo-ca-cd:laboratoare:tutorial-checkstyle:poo_checks.zip}} | * {{:poo-ca-cd:laboratoare:tutorial-checkstyle:poo_checks.zip}} | ||