>> +1 to force upper case for `static final` variables. +1 too On Mon, Apr 27, 2020 at 12:08 PM Nikolay Izhikov <nizhi...@apache.org> wrote:
> +1 to force upper case for `static final` variables. > > > 25 апр. 2020 г., в 07:39, Ivan Pavlukhin <vololo...@gmail.com> > написал(а): > > > > Maxim, > > > > Thank you for efforts in a code quality improvement! > > > > Unfortunately I do not agree with the proposal. Usually I like to > > refer a following guide [1]. While a question "what is a constant" is > > not trivial but I suppose that every static final field capitalization > > can cause some problems. For example, a developer can make false > > assumptions about immutability and thread safety basing on a > > capitalized field name. > > > > [1] > https://google.github.io/styleguide/javaguide.html#s5.2.4-constant-names > > > > Best regards, > > Ivan Pavlukhin > > > > пт, 24 апр. 2020 г. в 21:58, Pavel Tupitsyn <ptupit...@apache.org>: > >> > >>> All static final object reference types that are never followed by "." > >> (dot) > >> With this way of thinking we can say that everything is a constant if we > >> don't change it - no need for static final. > >> "Constant" is usually something that you can't change, even you want - > >> compiler won't let you. > >> In Java that would be static final primitives and read-only objects like > >> String. > >> > >> On Fri, Apr 24, 2020 at 8:25 PM Pavel Pereslegin <xxt...@gmail.com> > wrote: > >> > >>> Maxim, > >>> > >>>> But what exactly is `constant` means?! I'd suggest applying this rule > >>>> to all class fields with `static final` modifiers without any clauses. > >>>> (check Java Naming convention [2] paragraph 3.3). > >>> > >>> I disagree with this and want to clarify what exactly the Java naming > >>> convention says: > >>> > >>>>> The following are considered to be constants: > >>>>> 1. All static final primitive types (Remember that all interface > fields > >>> are inherently static final). > >>>>> 2. All static final object reference types that are never followed by > >>> "." (dot). > >>>>> 3. All static final arrays that are never followed by"[" (dot) > >>> > >>> I don't see that convention says "any static final field". > >>> > >>> пт, 24 апр. 2020 г. в 20:11, Sergey Antonov <antonovserge...@gmail.com > >: > >>>> > >>>> Maxim, It's a good idea! > >>>> > >>>> Please don't forget to update out code style guidelines too. > >>>> > >>>> Thank you for keeping the code cleaner! > >>>> > >>>> пт, 24 апр. 2020 г. в 19:49, Maxim Muzafarov <mmu...@apache.org>: > >>>> > >>>>> Igniters, > >>>>> > >>>>> > >>>>> It is not directly mentioned through the Apache Ignite Coding > >>>>> Guidelines [1] about naming the `static final` class fields using > only > >>>>> upper-case letters. I'd like to suggest to fill this gap. > >>>>> > >>>>>> Constants should all be upper-case. > >>>>> But what exactly is `constant` means?! I'd suggest applying this rule > >>>>> to all class fields with `static final` modifiers without any > clauses. > >>>>> (check Java Naming convention [2] paragraph 3.3). > >>>>> > >>>>> > >>>>> I've prepared PR [3] with capitalizing letters on all of the constant > >>>>> names simultaneously with supporting the standard ConstantName > >>>>> checkstyle [4] rule. > >>>>> > >>>>> Can we proceed with this change? > >>>>> WDYT? > >>>>> > >>>>> > >>>>> [1] > >>>>> > >>> > https://cwiki.apache.org/confluence/display/IGNITE/Coding+Guidelines#CodingGuidelines-Naming > >>>>> [2] > >>>>> > >>> > https://web.archive.org/web/20120911192801/developers.sun.com/sunstudio/products/archive/whitepapers/java-style.pdf > >>>>> [3] https://github.com/apache/ignite/pull/7662 > >>>>> [4] https://issues.apache.org/jira/browse/IGNITE-12888 > >>>>> > >>>> > >>>> > >>>> -- > >>>> BR, Sergey Antonov > >>> > >