Code Styling and its Effects on Code Readability and Interpretation
Abstract: Code readability has a considerable effect upon the life-cycle of software products. It is important that the code is maintainable, reusable and that it is easy for a programmer to get acquainted with unfamiliar code. Previous studies have been used to show correlations between code readability and code styling. Eye tracking technology has also been used in order to study the movements of the eye and the focus of a subject in a computer gener- ated environment. By using a combination of Eye tracking technology and code styling features such as syntax highlighting, logical variable- and func- tion names, code indentation and code commenting the correlations between code readability and code styling has been further addressed and examined. This thesis studies subjects that have participated in a series of experiments in which they have been given the assignments of examining code whilst their eye movements have been tracked using Eye tracking tools and software. The tracked data was assembled into heatmap-based images plotting movement of the eye on screen. The experiments showed that there is indeed correla- tions between how code styling is used and how the participants addressed the given assignments. The conclusion of this report is that the readability and interpretation of code was improved by the introduction of certain code styling features. As for code indentation and syntax highlighting, no visible improvement was observed. Code commenting, however, caused the subjects to examine the method sig- natures in a code more thoroughly and thus detecting return-type-related errors hidden within; a visible improvement. Furthermore, logical variable naming rids the programmer of the trouble of having to read entire pieces of code that could otherwise, when used cleverly, be explained by a method or variable name itself, and thus improved readability and interpretation as well.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)