harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jesse Wilson <jessewil...@google.com>
Subject Idiomatic Java: inverted conditions
Date Mon, 26 Oct 2009 21:57:24 GMT
Harmony Team,

Continuing along with a theme, there's another C/C++ism in our Java code
that frustrates me. Our Java code frequently inverts conditions from their
natural language form. From HttpURLConnectionImpl:

            if (null == resHeader) {

                resHeader = new Header();


...or even more surprising, from HttpURLConnection:

        if (0 < chunkLength) {

            throw new IllegalStateException(Msg.getString("KA003"));


I find myself having to slow down to interpret what the code intends. I
can't mentally parse "if 0 is less-than chunkLength" nearly as efficiently
as the equivalent "if chunkLength is greater than 0" condition. From a quick
survey of the code base, it looks like we use a mix of the two forms.

If anyone thinks I should avoid flipping of these conditionals back to their
normal form, please let me know. In my logging patch, I flipped several
"null == foo" checks and I found it made the code easier to read.


  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message