Pracuję nad programowaniem w języku Java. Niedawno doszedłem do sytuacji, w której muszę przestrzegać standardów kodowania: porządkowanie członków i metod, konwencje nazewnictwa, sekwencje modyfikatorów. Zastanawiam się nad metodami zautomatyzowania sprawdzania zgodności lub wygenerowania jakiegoś mechanizmu, który zmienia kolejność.Automatyczne sprawdzanie plików Java pod kątem zgodności z kodowaniem standardowym
Pracujemy z Eclipse, ale technologia będzie otwarta. Jednym ze sposobów, w jaki może działać, jest generowanie zewnętrznego narzędzia do budowania i dodawanie go do projektów. Wadą byłoby to, że automagicznie zastosowałby się do wszystkich plików, które mogłyby napotkać problemy ze starszym kodem, zwiększając liczbę błędów do stopnia, w którym nie jest już rozsądnym wskaźnikiem zgodności. Ponadto sprawia, że recenzje kodu są znacznie trudniejsze, co nie jest pożądane.
Innym sposobem byłoby coś w rodzaju parsera z jedynie informacyjnymi możliwościami. Moglibyśmy uruchomić proces wewnątrz Jenkinsa, a to z pewnością zadziałałoby, ale to również oznaczałoby, że kod przeszedł już przegląd, który zwykle jest trochę spóźniony na sprawdzenie zgodności kodu.
Czy istnieją sugerowane, a nawet łatwe metody włączenia takich funkcji do IDE, systemu kontroli źródła (Mercurial), a nawet Jenkins? Jak to jest egzekwowane w innym miejscu?
TeamCity został wstępnie przetestowane popełnienia, który miejmy nadzieję, może również sprawdzić zgodność z kodami. – Jayan
Zacznij od [PMD] (http://pmd.sourceforge.net/) i [CheckStyle] (http://checkstyle.sourceforge.net/) i przejdź do innych "narzędzi do analizy statycznej". – parsifal
Patrząc obecnie na CheckStyle, wydaje się, że nie można swobodnie definiować samych reguł, a jedynie reguły do sprawdzenia (musimy przestrzegać sekwencji modyfikatorów różniących się od standardów kodowania Java). – 0xCAFEBABE