StyleAssistant
What is StyleAssistant?
StyleAssistant is a configurable checker for style errors. This means that the code gets verified for violations
against the Coding Conventions (e.g. naming errors, public
attributes). After checking these, a report is generated.
StyleAssistant has moved to Sourceforge.net.
CVS
Browse CVS
Anonymous CVS checkout: cvs -z3 -d:pserver:anonymous@cvs.styleassistant.sourceforge.net:/cvsroot/styleassistant co styleassistant
Features
- Integration in IDE & Editors
- Ant (jakarta-ant), called as user definied task - done
- Console, call the tool from the console - not started
- Emacs (XEmacs), call StyleAssistant via Tools -> Make -> "ant -emacs" - done
- JBuilder (Borland JBuilder), call StyleAssistant it via key stroke, menu item or a button, configure the included files and view the reported errors in several sorting orders - not started
>> submit another integration idea
- Wide configuration abilities
- Possible features
- capture pattern names via class and method names
Current status: coding, working for more features
version 0.1 will be released soon
old versions can be found at old download page
27.8.2001: New features: alpha version 0.0.5 (ConditionalCheckCase, SwitchBranchCase)
24.8.2001: New features: alpha version 0.0.4 (MethodName-, VariableName-, AttributeNamechecker, UnusedVariableNameChecker)
14.8.2001: New features: alpha version 0.0.3 (ClassName checker, bugfix in Location.java => no NullPointerException any more)
14.8.2001: Buxfixes: alpha version 0.0.2 (Buildfile modified, Coding style improved - Iterators, variable names)
12.8.2001: First release: alpha version 0.0.1
07.8.2001: Recherche nach anderen Programmen, Einlesen ins Thema, erster Code.
Examples
java de.styleassistant.Main -f checks.properties examples
E:\CVS\styleassistant\examples\Test\Test.java:7: Class name 'Test.Test' does not conform with coding conventions.
E:\CVS\styleassistant\examples\Test\Test.java:8: Final attribute name 'wrongWrittenFinalAttribute' does not conform with coding conventions.
E:\CVS\styleassistant\examples\Test\Test.java:13: Method name 'NothingToDo' does not conform with coding conventions.
E:\CVS\styleassistant\examples\Test\Test.java:15: Unused variable 'unusedVariable'.
E:\CVS\styleassistant\examples\Test\Test.java:22: Empty catch block found.
E:\CVS\styleassistant\examples\Test\Test.java:26: Switch statements are not allowed. Try to replace switch using subclasses.
Mailing lists
styleassistant-devel - list for developers of styleassistant
styleassistant-users - help for styleassistant users
styleassistant-announce - announcements for new versions of styleassistant
Feature ideas
Complete list can be found at: Features from jTest 4.1
If you have a new feature idea, add it in the feature request-section in the sourceforge project.
- Names - highest priority
- Non-final variables must have names that conform to a standard (1) done
- Final variables must have names that conform to a standard (2) done
- Non-final attributes must have names that conform to a standard (3) done
- Final attributes must have names that conform to a standard (4) done
- Classes must have names that conform to a standard (5) done
- Methods must have names that conform to a standard (6) done
- Interfaces must have names that conform to a standard (7) done
- Labels must have names that conform to a standard (8)
- Programm flow
- Conditional statements must be followed by a block (9) done
- Catch blocks may not be empty (12) done
- Every switch must have a default clause (13) done
- No fall through several case clauses (14) done
- Organization
- Class and interface contents must appear in standard order (24)
- Modifiers must be declared in standard order (30)
- A method may not have the same name as its class (28)
- No assignments in conditional expressions (11)
- No assignments in conditional expressions (11)
- Constant variables must be declared final (25)
- Minimalism
- Declared variables must be used (23) done
- Imported items must be used (26)
Thematic related projects
- Barat is a front-end for Java. It parses source and byte-code, and performs name and type analysis on demand.
Barat offers Visitors to act on an Abstract Source Tree and perform name and type analysis.
- jTest is a commercial tool doing the same like StyleAssistant
Michael Große
Last modified: Sat Sep 08 10:30:10 (MEZ) - Mitteleurop. Sommerzeit 2001