The Judgement of Code Style (JOCS) system is an automated tool that mimics the human grading of Java code style. Due to the emphasis on human-readable code in corporate and professional programming environments, students of computer science require comprehensive feedback on their code style. However, increases in enrollment in programming courses both online and oine make providing this feedback dicult. The JOCS system provides an automated, extensible solution that diers in scope from currently available tools. The JOCS system evaluates code for readability and style using metrics based on accepted stylistic guidelines such as consistency, code density, modularity, and documentation. Machine learning techniques are used to discern which metrics are appropriate for scoring a given corpus of code submissions, based on a history of human generated grades. The JOCS system is then used to generate style scores for future submissions. The results provide insight into which features of the code can be used as indicators of good or bad style.
[1]
Steven P. Reiss,et al.
Automatic code stylizing
,
2007,
ASE.
[2]
Joshua Bloch.
Effective Java (2nd Edition) (The Java Series)
,
2008
.
[3]
Daniel Shawcross Wilkerson,et al.
Winnowing: local algorithms for document fingerprinting
,
2003,
SIGMOD '03.
[4]
Randolph G. Bias,et al.
Optimal Line Length in Reading--A Literature Review
,
2005
.
[5]
Steve McConnell,et al.
Code complete - a practical handbook of software construction, 2nd Edition
,
1993
.
[6]
Robert L. Mercer,et al.
Class-Based n-gram Models of Natural Language
,
1992,
CL.
[7]
Martin Fowler,et al.
Refactoring - Improving the Design of Existing Code
,
1999,
Addison Wesley object technology series.