JCSC

Check and feel better about your code!

(c) 1999-2005 by Ralph Jocham (rjocham72@netscape.net)
JCSC is released under the terms of the GNU General Public License

JCSC

Documentation

Extensions

How to get

General

Remote Tools

Friends

JCSC

Overview

JCSC is a powerful tool to check source code against a highly definable coding standard and potential bad code.
The standard covers naming conventions for class, interfaces, fields, parameter, ... . Also the structural layout of the type (class/interface) can be defined. Like where to place fields, either before or after the methods and in which order. The order can be defined through the visibility or by type (instance, class, constant). The same is applicable for methods. Each of those rules is highly customizable. Readability is enhanced by defining where to put white spaces in the code and when to use braces. The existence of correct JavaDoc can be enforced and various levels. Apart from that, it finds weaknesses in the the code -- potential bugs -- like empty catch/finally block, switch without default, throwing of type 'Exception', slow code, ... . JCSC is inspired by lint.

JCSC features a graphical UI for easy rule configuration, a command line interface, an Ant task which produces a JavaDoc style webpage and is CruiseControl compatible (see screenshot). Also, the NCSS/CCN metrics have been added for easier code quality assesment. Plugin for IntelliJ IDEA enables ad hoc checking from within the IDE. (see screenshot)

Currently JCSC supports over 100 enforceable rules -- this is not all and there is more to come!

NEW: Full support of the JDK 1.5 (Java 5) language. The rules editor is now a web start application; see Remote Tools or click here JCSC Web Start.

Tested platforms: Windows (with and without cygwin), Linux, Mac OS X

Performed Checks in a Nutshell

The default checking rules adhere to the Sun Code Conventions with some additional auditing for weak code. (see Sun Code Conventions for the Java Programming Language)

Each of those checks can be either switched on/off, or be configured (see Rules)

General Checks

Naming Checks using regexps for

Placing Rule Checks for method, fields and inner classes in class/interface

JavaDoc Checking for

Metrics

Testimonials

www.valtech.com As a consultant with an agile approach who often works in regulated environments I find using JCSC under CruiseControl to be invaluable tool for both managing code quality and providing an audit trail of compliance to standards.

Keith Thomas, Consultant Valtech (Keith.Thomas@valtech.com)

Thinking in Java 3rd ed.
Bruce Eckel used JCSC to validate the code examples in his 3rd edition of Thinking in Java
See B: Java Programming Guidlines / Implementation


Last updated on 2003年07月03日 18:34

AltStyle によって変換されたページ (->オリジナル) /