• DocumentCode
    2155422
  • Title

    To camelcase or under_score

  • Author

    Binkley, Dave ; Davis, Marcia ; Lawrie, Dawn ; Morrell, Christopher

  • Author_Institution
    Loyola Coll. in Maryland, Baltimore, MD
  • fYear
    2009
  • fDate
    17-19 May 2009
  • Firstpage
    158
  • Lastpage
    167
  • Abstract
    Naming conventions are generally adopted in an effort to improve program comprehension. Two of the most popular conventions are alternatives for composing multi-word identifiers: the use of underscores and the use of camel casing. While most programmers have a personal opinion as to which style is better, empirical study forms a more appropriate basis for choosing between them. The central hypothesis considered herein is that identifier style affects the speed and accuracy of manipulating programs. An empirical study of 135 programmers and non-programmers was conducted to better understand the impact of identifier style on code readability. The experiment builds on past work of others who study how readers of natural language perform such tasks. Results indicate that camel casing leads to higher accuracy among all subjects regardless of training, and those trained in camel casing are able to recognize identifiers in the camel case style faster than identifiers in the underscore style.
  • Keywords
    naming services; programming; reverse engineering; statistical analysis; camel case style; code readability; empirical study; multiword identifier; naming convention; natural language reader; program comprehension; program manipulation; programming style; underscore style; Computer languages; Educational institutions; Java; Natural languages; Programming profession; Psychology;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Program Comprehension, 2009. ICPC '09. IEEE 17th International Conference on
  • Conference_Location
    Vancouver, BC
  • ISSN
    1092-8138
  • Print_ISBN
    978-1-4244-3998-0
  • Electronic_ISBN
    1092-8138
  • Type

    conf

  • DOI
    10.1109/ICPC.2009.5090039
  • Filename
    5090039