Introduction

Jalopy is an advanced source code formatter for the Sun Java™ Programming Language. It can automate all aspects of code layout, like indentation, aligning, line wrapping, brace styling, grouping and sorting. Without effort you can achieve a consistent coding style accross your development team, or present your code in different shapes for purposes like code review or customer shipment.

Jalopy is written in Java™ and provides many Plug-ins to integrate the formatting engine into some of the most popular Java applications, including Ant, Eclipse, IntelliJ IDEA, Sun Java Studio Creator, Borland JBuilder, Oracle JDeveloper, jEdit, NetBeans, Maven, IBM Rational Application Developer (RAD), Sun ONE Studio and IBM Websphere Application Developer (WSAD), but can be used standalone as well.

 

How much is good layout worth?

Our studies support the claim that knowledge of programming plans and rules of programming discourse can have a significant impact on programming comprehension. In their book called [The] Elements of [Programming] Style, Kernighan and Plauger also identify what we would call discourse rules. Our empirical results put teeth into these rules: It is not merely a matter of aesthics that programs should be written in a particular style. Rather there is a psychological basis for writing programs in a conventional manner: programmers have strong expectations that other programmers will follow these discourse rules. If the rules are violated, then the utility afforded by the expectations that programmers have built up over time is effectively nullified. The results from the experiments with novice and advanced student programmers and with professional programmers described in this paper provide clear support for this claim.

 
 --Elliot Soloway and Kate Ehrlich

What does it do for you?

Jalopy accurately represents the logical structure of your code. That's the primary purpose of any source code formatting. Indentation, white space and line wrapping are used in a sensible way to show the structure of your code.

Jalopy consistently represents the logical structure of your code. Nearly impossible to achieve manually. Scope levels are always correctly indented, braces and brackets are always found at the same places.

Jalopy improves the readability of your code. Your code layout will always meet the expectations laid out by your team no matter when a file was written or by whom.

Jalopy makes your code withstand modifications. A developer don't have to care anymore whether modifying one line of code may require modifying several others in order to achieve consistency.

Jalopy increases the productivity of your developers. They can concentrate on the design and implementation issues, instead of spending time struggling with the code style. Developers may even write code in whatever style they prefer, formatting it before they submit files to the repository.

How can it be used?

Jalopy is especially well-suited for client-side use by developers. It tightly integrates with several Java IDE's to serve as an integral part of any source code editing.

Jalopy can be added into your SCM. Your sources are formatted on the server side before they are committed to the repository. This can currently be achieved using custom scripting with the Console Plug-in.

Jalopy supports usage as part of your build process. Your sources may be formatted after every compilation, or on the checkout/checkin process. Jalopy already provides support for the well-known Ant and Maven build tools and can be easily integrated with many others.