If we adopt Google style strictly, then there may be differences in naming the class data members, in a way not compatible with our C/C++ coding conversion. For example, we normally suffix a data member with '_', which is not the case with the Google style, available here https://google.github.io/styleguide/javaguide.html#s5.3-camel-case. In Google style, the naming conversion for data members are as follows.
Non-constant field names (static or otherwise) are written in lowerCamelCase. These names are typically nouns or noun phrases. For example, computedValues or index. 5.2.6 Parameter names Parameter names are written in lowerCamelCase. One-character parameter names in public methods should be avoided. 5.2.7 Local variable names Local variable names are written in lowerCamelCase. Even when final and immutable, local variables are not considered to be constants, and should not be styled as constants. In addition, the # of white space characters to indent a new block of code or a switch statement is 2, and tabs should not be used to indent blocks etc. Sounds like we may need to either follow the Google style completely, or follow it in principle but allow a slight deviation from it, such as suffix data members with '_'. I personally do not use tabs for indentation and put 3 white characters before the start of a new block. Thanks --Qifan ________________________________ From: Selva Govindarajan <[email protected]> Sent: Thursday, June 7, 2018 11:53:19 AM To: [email protected] Subject: RE: Standardize on java code style Are there any other guidelines for contributors who use neither of these IDE or any IDE at all? In my opinion, 8 spaces seem to be a large indentation that would take the code away from the screen. Can these plug-ins be configured with smaller number of spaces. Selva -----Original Message----- From: Hans Zeller <[email protected]> Sent: Thursday, June 7, 2018 9:29 AM To: [email protected] Subject: RE: Standardize on java code style +1 on Venkat's proposal. The Google style seems reasonably compatible with what we have already, both in Java and in C++. Here are a few guidelines that should help avoiding such large differences, whether we adopt the Google style or not: - Don't format entire files, especially not if there is not a common agreed upon style - Don't insert any tabs into source files (part of Google style) - For those tabs that unfortunately are in the code, use 8 spaces as the width, as most simple tools (vi, github.com, emacs, Notepad, BeyondCompare, etc.) do To Avinash's question: Yes, these are Maven projects. Thanks, Hans -----Original Message----- From: Avinash Dongre <[email protected]> Sent: Wednesday, June 6, 2018 10:38 PM To: [email protected] Subject: Re: Standardize on java code style I have not seen the java code, is it maven based project ?? If java project is converted into gradle, then it has spotless plugin which while building the code fixes the code style. Thanks Avinash ________________________________ From: Venkat Muthuswamy <[email protected]> Sent: 04 June 2018 23:56:21 To: [email protected] Subject: Standardize on java code style Hi, Given that many contributors are touching same java files and using their own editors of choice, it becomes difficult to review PRs when git reports large change when mismatch in tabs vs spaces. Can we standardize on the java code style using the google java code style? There are plugins for eclipse and IntelliJ IDEs. We start using these on any new files we touch going forward. https://github.com/google/google-java-format GitHub - google/google-java-format: Reformats Java source ...<https://github.com/google/google-java-format> github.com README.md google-java-format. google-java-format is a program that reformats Java source code to comply with Google Java Style.. Using the formatter from the command-line ... https://google.github.io/styleguide/javaguide.html For eclipse, You can download the plugin jar and copy it to your eclipse/drop-ins folder. Restart eclipse and then set your java formatter implementation to google-java-format in Window > Preferences > Java > Code Style > Formatter > Formatter Implementation Comments ? Venkat
